unit klAPI7;

// ************************************************************************ //
// WARNING                                                                    
// -------                                                                    
// The types declared in this file were generated from data read from a       
// Type Library. If this type library is explicitly or indirectly (via        
// another type library referring to this type library) re-imported, or the   
// 'Refresh' command of the Type Library Editor activated while editing the   
// Type Library, the contents of this file will be regenerated and all        
// manual modifications will be lost.                                         
// ************************************************************************ //

// PASTLWTR : $Revision:   1.88  $
// File generated on 03.02.2010 13:41:13 from Type Library described below.

// ************************************************************************ //
// Type Lib: kAPI7.TLB (1)
// IID\LCID: {69AC2981-37C0-4379-84FD-5DD2F3C0A520}\0
// Helpfile: sdk.hlp
// DepndLst: 
//   (1) v2.0 stdole, (C:\WINDOWS\System32\stdole2.tlb)
//   (2) v1.0 Kompas6Constants, (ksConstants.tlb)
//   (3) v1.0 Kompas6Constants3D, (ksConstants3D.tlb)
//   (4) v1.0 Kompas6API5, (kAPI5.TLB)
//   (5) v4.0 StdVCL, (C:\WINDOWS\System32\stdvcl40.dll)
// Errors:
//   Hint: TypeInfo 'Procedure' changed to 'Procedure_'
//   Hint: Member 'Type' of 'IKompasAPIObject' changed to 'Type_'
//   Hint: Parameter 'Type' of IKompasAPIObject.Type changed to 'Type_'
//   Hint: Parameter 'Library' of IApplication.Converter changed to 'Library_'
//   Hint: Parameter 'Type' of IDocuments.Add changed to 'Type_'
//   Hint: Parameter 'Type' of IDocuments.AddWithDefaultSettings changed to 'Type_'
//   Hint: Parameter 'Type' of IKompasDocument.DocumentType changed to 'Type_'
//   Hint: Parameter 'Type' of IDocumentFrame.ZoomPrevNextOrAll changed to 'Type_'
//   Hint: Parameter 'Type' of IDocumentFrame.ConvertCoordinates changed to 'Type_'
//   Hint: Parameter 'Type' of IText.AddTextLine changed to 'Type_'
//   Hint: Parameter 'Type' of IText.AddTextLineBefore changed to 'Type_'
//   Hint: Parameter 'Case' of IText.Replace changed to 'Case_'
//   Hint: Symbol 'Assign' renamed to 'Assign_'
//   Hint: Symbol 'Assign' renamed to 'Assign_'
//   Hint: Parameter 'Object' of IUserDataStoragesMng.Add changed to 'Object_'
//   Hint: Parameter 'Object' of IUserDataStorage.GetObject changed to 'Object_'
//   Hint: Parameter 'Object' of IUserDataStorage.SetObject changed to 'Object_'
//   Hint: Parameter 'Object' of IUserDataStorage.AddObject changed to 'Object_'
//   Hint: Parameter 'Type' of IPropertyControls.Add changed to 'Type_'
//   Hint: Parameter 'Object' of ICheckSum.AddInterface changed to 'Object_'
//   Hint: Parameter 'Object' of ICheckSum.AddReference changed to 'Object_'
//   Hint: Parameter 'Uses' of ILibArraySettings.GetLibrarys changed to 'Uses_'
//   Hint: Parameter 'Type' of IDrawingObject.DrawingObjectType changed to 'Type_'
//   Hint: Parameter 'Type' of IDrawingObject.Temp changed to 'Type_'
//   Hint: Parameter 'Type' of IDrawingObject.Valid changed to 'Type_'
//   Hint: Parameter 'Type' of IPart7.LoadState changed to 'Type_'
//   Hint: Parameter 'Type' of IPart7.DefaultObject changed to 'Type_'
//   Hint: Parameter 'Type' of IModelObject.ModelObjectType changed to 'Type_'
//   Hint: Parameter 'Type' of IFeature7.FeatureType changed to 'Type_'
//   Hint: Parameter 'Object' of ISelectionManager.IsSelected changed to 'Object_'
//   Hint: Parameter 'Object' of IChooseManager.IsChoosen changed to 'Object_'
//   Hint: Parameter 'Type' of IAttributeType.AddColumn changed to 'Type_'
//   Hint: Parameter 'Type' of IColumnInfo.AddRecordColumn changed to 'Type_'
//   Hint: Parameter 'Type' of IKompasDocument1.GetInterface changed to 'Type_'
//   Hint: Parameter 'Type' of IDrawingGroup.Objects changed to 'Type_'
//   Hint: Parameter 'Object' of IDrawingGroup.ExistObject changed to 'Object_'
//   Hint: Member 'Unit' of 'IDimensionText' changed to 'Unit_'
//   Hint: Parameter 'Type' of ILoadCombination.CompletelyLoaded changed to 'Type_'
//   Hint: Parameter 'Property' of IPropertyKeeper.GetPropertyValue changed to 'Property_'
//   Hint: Parameter 'Property' of IPropertyKeeper.SetPropertyValue changed to 'Property_'
//   Hint: Parameter 'Type' of IReportFilter.GetCondition changed to 'Type_'
//   Hint: Parameter 'Type' of IReportFilter.SetCondition changed to 'Type_'
//   Hint: Parameter 'Type' of IPropertySlideBox.SlideType changed to 'Type_'
//   Hint: Parameter 'Type' of IPropertySlideBox.SlideType changed to 'Type_'
//   Hint: Parameter 'Uses' of ILibItemSettings.GetItems changed to 'Uses_'
//   Hint: Parameter 'Set' of ksPropertyManagerNotify.EditFocus changed to 'Set_'
//   Hint: Parameter 'Type' of IChooseBodies7.ChooseBodiesType changed to 'Type_'
//   Hint: Parameter 'Type' of IChooseBodies7.ChooseBodiesType changed to 'Type_'
//   Hint: Member 'Object' of 'IPoint3DParamCenter' changed to 'Object_'
//   Hint: Parameter 'Object' of IRadialDimension3D.PlaneObject changed to 'Object_'
//   Hint: Parameter 'Object' of IRadialDimension3D.PlaneObject changed to 'Object_'
//   Hint: Parameter 'Object' of IRough3D.SetBasePosition changed to 'Object_'
//   Hint: Parameter 'Object' of IBase3D.SetBranchBeginPoint changed to 'Object_'
//   Hint: Parameter 'Object' of ILocalCoordinateSystems.SetCurrent changed to 'Object_'
//   Hint: Parameter 'Object' of ISurfacesIntersectionCurve.GetObject changed to 'Object_'
//   Hint: Parameter 'Object' of ILocalCSAxesDirectionParam.SetDirectingObject changed to 'Object_'
//   Hint: Parameter 'Object' of IBranchs3D.AddBranch changed to 'Object_'
//   Hint: Parameter 'Object' of IBranchs3D.AddBranchByPoint changed to 'Object_'
//   Hint: Parameter 'Object' of ILocalCSOrientByObjectParam.SetOrientationObject changed to 'Object_'
//   Hint: Parameter 'Object' of ILocalCSOrientByObjectParam.OrientationObject changed to 'Object_'
//   Hint: Parameter 'Type' of IContour.AddSegment changed to 'Type_'
//   Hint: Parameter 'Type' of IRectangle.GetCorner changed to 'Type_'
//   Hint: Parameter 'Type' of IRectangle.SetCorner changed to 'Type_'
//   Hint: Parameter 'Type' of IRegularPolygon.GetCorner changed to 'Type_'
//   Hint: Parameter 'Type' of IRegularPolygon.SetCorner changed to 'Type_'
//   Hint: Parameter 'Begin' of IMarkOnLeader.AddBranch changed to 'Begin_'
//   Hint: Parameter 'Begin' of IMarkOnLeader.AddBranchByPoint changed to 'Begin_'
//   Hint: Parameter 'Type' of IBuildingAxis.AddNodeByPoint changed to 'Type_'
//   Hint: Parameter 'Type' of IMarkNodes.Add changed to 'Type_'
//   Hint: Parameter 'Type' of IInsertionsManager.InsertionDefinitions changed to 'Type_'
//   Hint: Parameter 'Type' of IInsertionsManager.InsertionDefinition changed to 'Type_'
//   Hint: Parameter 'Type' of IInsertionsManager.AddDefinition changed to 'Type_'
//   Hint: Parameter 'Type' of IInsertionsManager.DefinitionsCount changed to 'Type_'
//   Hint: Parameter 'Type' of IAnnotativeContainer.Add changed to 'Type_'
// ************************************************************************ //
{$TYPEDADDRESS OFF} // Unit must be compiled without type-checked pointers. 
interface

uses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL, 
  ksConstTLB, LDefin3D, klTlb;

// *********************************************************************//
// GUIDS declared in the TypeLibrary. Following prefixes are used:        
//   Type Libraries     : LIBID_xxxx                                      
//   CoClasses          : CLASS_xxxx                                      
//   DISPInterfaces     : DIID_xxxx                                       
//   Non-DISP interfaces: IID_xxxx                                        
// *********************************************************************//
const
  // TypeLibrary Major and minor versions
  KompasAPI7MajorVersion = 1;
  KompasAPI7MinorVersion = 0;

  LIBID_KompasAPI7: TGUID = '{0B83FE6B-0F4E-4931-AA7A-7D9FD3C063D4}';

  IID_IKompasAPIObject: TGUID = '{5C799A83-C0A4-4312-BEB0-21CBD7FF4C13}';
  IID_IApplication: TGUID = '{6A2EFAF7-8254-45A5-9DC8-2213F16AF5D7}';
  IID_IKompasCollection: TGUID = '{901F85DE-FA5A-4314-BD75-066A79AF20A8}';
  IID_IDocuments: TGUID = '{8BF39F08-5537-4910-84CE-B338E55F7BCF}';
  IID_IKompasDocument: TGUID = '{5C6E318D-BD6E-4AFA-8A13-977EAA0845EF}';
  IID_IDocumentFrames: TGUID = '{1D18C466-C085-4D68-A465-A85D0C8E3A0E}';
  IID_IDocumentFrame: TGUID = '{4437FABA-990F-45E2-B1A2-7754FB326B76}';
  IID_IDocumentSettings: TGUID = '{B35FF50E-2991-4630-8AB8-DC3153E7971A}';
  IID_ISpecificationDescriptions: TGUID = '{B9632C5C-86E1-4BC9-83A5-A954E407246A}';
  IID_ISpecificationDescription: TGUID = '{9678959E-166B-45F3-BDE8-88BBF4645F5C}';
  IID_ISpecificationStyle: TGUID = '{F237D2B3-DFEE-4702-B71F-E5F6923F03E6}';
  IID_ISpecificationTuning: TGUID = '{BB719D42-E44C-445B-969A-0E2F63E97FC8}';
  IID_ITextStyle: TGUID = '{7EA65CA0-420D-4E1D-8C19-998495C4DA2F}';
  IID_ITextFont: TGUID = '{A6AD008D-58D1-48B5-BD29-E6795289FE4B}';
  IID_ITabulators: TGUID = '{BB66E097-95C7-49B1-B6FD-3506C7758D09}';
  IID_ITabulator: TGUID = '{2DD73B92-F8C8-49AA-AECD-B75713427FC1}';
  IID_ISpecificationTuningSections: TGUID = '{01B1BF6F-B9E3-4E94-99A0-81394FB99B16}';
  IID_ISpecificationTuningSection: TGUID = '{E68AA413-CC35-450D-BF35-0F294F59B08C}';
  IID_ISpecificationSubsections: TGUID = '{56532CB4-BD3F-442C-AFA4-0E6BEB677E61}';
  IID_ISpecificationSubsection: TGUID = '{7F0E5F63-815C-46E5-B99E-C24244566C00}';
  IID_IAdditionalBlockTunings: TGUID = '{8910CC92-AC76-4837-AB7A-5FD3C7B74728}';
  IID_IAdditionalBlockTuning: TGUID = '{9CD5B016-9CE9-4E0A-8902-196D11360536}';
  IID_IAdditionalBlockSectionTunings: TGUID = '{43EFA203-F956-43D6-B603-87807DDEFD0A}';
  IID_IAdditionalBlockSectionTuning: TGUID = '{E04B8464-C8D6-4BAC-99B5-AE79EBBDB205}';
  IID_ISheetFormat: TGUID = '{B9CDE694-4C33-4375-A6F6-AE94DC759510}';
  IID_ISpecificationColumnStyles: TGUID = '{41529A95-51F0-44B0-9D55-5753BCEB23BC}';
  IID_ISpecificationColumnStyle: TGUID = '{16839CAA-3AFB-49A4-A19A-C61963967649}';
  IID_ISpecificationSectionStyles: TGUID = '{24AE8484-F4F4-4059-AFC7-9492A64C88E8}';
  IID_ISpecificationSectionStyle: TGUID = '{4B61FC7F-4826-4B58-8CCB-7D459AD0BE7B}';
  IID_IAdditionalBlockStyles: TGUID = '{90E2FBEC-A56F-423C-B89F-479673EDD895}';
  IID_IAdditionalBlockStyle: TGUID = '{B2A43FA6-9BCE-4468-9662-811A6255E220}';
  IID_ISpecificationBaseObjects: TGUID = '{B2B97D19-3A0B-4C9F-A6AC-DEFFAFE0D1C2}';
  IID_ISpecificationObject: TGUID = '{72EB4E8E-7952-4B36-852B-4816B7B5AFEE}';
  IID_ISpecificationBaseObject: TGUID = '{49994ED8-96BA-4D9D-B642-5F0F1E3FED16}';
  IID_ISpecificationColumns: TGUID = '{9F44BF03-DE25-4DDE-ADA0-92384199C100}';
  IID_ISpecificationColumn: TGUID = '{3ECFB777-2645-42B5-A6ED-111688433B26}';
  IID_ISpecificationColumnItems: TGUID = '{F4BAB79A-8A35-44D5-BE44-C566E444F342}';
  IID_ISpecificationColumnItem: TGUID = '{2BABDD01-EACA-4137-9749-25B8C5E230EE}';
  IID_IText: TGUID = '{99B840FC-0150-4DAD-BC0E-AD481BAAB8C2}';
  IID_ITextLine: TGUID = '{AAB72FE2-DEA3-4FB6-B0DD-B926249EF67C}';
  IID_ITextItem: TGUID = '{1DE74AFB-5026-4B85-861F-F0CFDBD443E6}';
  IID_IAttachedDocuments: TGUID = '{81FAB1C5-F566-4D06-8D3D-17FF01D3566F}';
  IID_IAttachedDocument: TGUID = '{333E9E11-D161-49AE-9791-8BEDB58B4C78}';
  IID_ISpecificationCommentObjects: TGUID = '{B8BD0FC7-AB2B-4E7A-8EC2-82060D7D29A7}';
  IID_ISpecificationCommentObject: TGUID = '{3B6B80CA-2145-4184-B786-0C571DF5ACD7}';
  IID_ILayoutSheets: TGUID = '{7AB54196-0B76-4B01-B769-7F47637173C4}';
  IID_ILayoutSheet: TGUID = '{D87B5A80-CF52-4510-ADD9-D1344FFFFC07}';
  IID_IStamp: TGUID = '{250CE350-7C21-47FD-8FF2-C44A9FF177DF}';
  IID_IUserDataStoragesMng: TGUID = '{77A6D4CA-6418-4DEE-B59C-400BFD052375}';
  IID_IUserDataStorages: TGUID = '{9DBFB4EB-BE9F-46EF-88FF-BB603A9E786B}';
  IID_IUserDataStorage: TGUID = '{DD2AF5C4-D5B9-420D-B658-F935F80A8586}';
  IID_IProcessParam: TGUID = '{CB5FDBC8-4DAE-4C4B-87D5-6FD1F2705C38}';
  IID_IPropertyTabs: TGUID = '{5BA6324E-E555-490F-A0E2-68D3C6C88D92}';
  IID_IPropertyTab: TGUID = '{45DE8E5B-BC2B-4584-8BA7-D3014D3A2397}';
  IID_IPropertyControls: TGUID = '{548241BA-FDA8-4633-981E-94552BE38D6B}';
  IID_IPropertyControl: TGUID = '{E35F8FF8-03C6-460C-A2F1-294A3A29A029}';
  IID_IPropertyManager: TGUID = '{34196EC3-58B2-436C-A353-427703740874}';
  IID_ILibraryManager: TGUID = '{53CDC510-99EA-4736-8542-194F4D8FB32B}';
  IID_IProceduresLibraries: TGUID = '{80F95B5B-DB8A-46B7-8C22-605A0AECD597}';
  IID_ILibrary: TGUID = '{9D6E9AE1-7DDF-4354-B8D0-E12023B186FA}';
  IID_IProceduresLibrary: TGUID = '{1AECE59E-DE4C-4FB9-B62B-7967573AD3B1}';
  IID_IProcedures: TGUID = '{1A77F076-2295-40F9-B1AA-2838C4CA0887}';
  IID_IProcedure: TGUID = '{7BF9DF08-D14D-4DA9-ABC2-FB458E7122D0}';
  IID_IInsertsLibraries: TGUID = '{A6E82D68-69D5-40C0-9A85-275B22219135}';
  IID_IInsertsLibrary: TGUID = '{885CAD68-B42B-45CF-8620-E0138558EFE3}';
  IID_IInserts: TGUID = '{FCBF6340-119D-4736-BB95-F1EAB4BEF1B8}';
  IID_IInsert: TGUID = '{D6A6D305-6B5C-4392-B61D-D669C092EEF2}';
  IID_IKompasError: TGUID = '{0A8B4CD1-7158-4CE6-96E0-885376F5DE1B}';
  IID_IConverter: TGUID = '{642D03AB-4798-48A5-B075-3CD9AFA18554}';
  IID_ICheckSum: TGUID = '{2AA9F713-2328-4E8F-B996-9DFDABC67DC9}';
  IID_IProgressBarIndicator: TGUID = '{BE125ABA-EAB2-4A22-99D7-108C84B6DCC5}';
  IID_ISystemSettings: TGUID = '{FFB66332-17FF-47EB-AC43-32084F8F6077}';
  IID_ILibArraySettings: TGUID = '{76D9033D-5F87-41CC-A3E8-55EFEE94B677}';
  IID_IMath2D: TGUID = '{0409EC8F-88F7-4242-81E7-965ABEAE932C}';
  IID_ICurve2D: TGUID = '{65C82884-C41B-47A1-8C07-E8820D6718EA}';
  IID_IPrintJob: TGUID = '{9D86880B-C004-475D-8221-B786FD5A228B}';
  IID_IPrintJob_Sheet: TGUID = '{0EC985BC-81FC-498E-BF15-03DDC870AA33}';
  IID_IKompasDocument2D: TGUID = '{096E62B3-7184-4998-9925-74BB710D8D8E}';
  IID_IViewsAndLayersManager: TGUID = '{A4737593-578B-4187-8CAD-E1056EB5404B}';
  IID_IDrawingObjects: TGUID = '{3DD7F97B-59CB-4297-A1BA-04E5A7FFF448}';
  IID_IViews: TGUID = '{9CD1B5E6-C1A2-4910-8D0C-97080B14AA3D}';
  IID_IDrawingObject: TGUID = '{07EF021F-11C1-4015-8D87-4DC94A2A71B0}';
  IID_IView: TGUID = '{21A7BA87-1C8B-41B4-8247-CDD593546F37}';
  IID_ILayers: TGUID = '{F6DC2898-D596-4418-A21A-D15AE07B9A40}';
  IID_ILayer: TGUID = '{9AD76C38-CC48-4901-AEE5-27B48F51563C}';
  IID_IVariable7: TGUID = '{8BAB52D9-8EF6-43A6-A1B8-AF42D5961A94}';
  IID_ILayerGroups: TGUID = '{DBFF6D98-8F79-453E-9B8B-81E40A6D8027}';
  IID_ILayerGroup: TGUID = '{265BBB5A-7B8A-4AA5-A0BB-FF64D23BE62B}';
  IID_ILayerFilterConditions: TGUID = '{BCA22E27-AB60-4BA6-87EE-92158AA6D366}';
  IID_ILayerFilterCondition: TGUID = '{D743BC12-82A9-4E8F-85B2-7154A356ACC0}';
  IID_IKompasDocument3D: TGUID = '{7B60E769-06C3-4FDC-9677-7B5EF5180308}';
  IID_IModelObject: TGUID = '{E37256D4-9021-47AC-8FAF-3713FB2A50C3}';
  IID_IPart7: TGUID = '{FA4A5FDE-A08C-4F5A-8C04-98395BA44307}';
  IID_IFeature7: TGUID = '{EF4343FA-985D-4FE9-AD5F-439BC8F92958}';
  IID_IModelObjects: TGUID = '{125CB096-639E-479F-98DE-F27FAB23838A}';
  IID_IParts7: TGUID = '{42F8FCEF-E56F-466C-8814-BEBAC0719AE6}';
  IID_IVariableTable: TGUID = '{2B8B154E-ED76-4FF0-B3E4-FEE691D014A4}';
  IID_IPoint3D: TGUID = '{D71AEDBE-01D4-4C7D-96DC-94981F2A1C37}';
  IID_ILocalCoordinateSystem: TGUID = '{BA6395F5-3506-4483-8864-4EEC220AF316}';
  IID_ISelectionManager: TGUID = '{E6DF688C-5B23-436B-A027-A96BFD5484CC}';
  IID_IChooseManager: TGUID = '{E2D9EAA6-F88C-4ADB-AC32-854E32E9FEE1}';
  IID_IAttribute: TGUID = '{94F965B0-5ABB-4994-98C7-B08FA8515452}';
  IID_IAttributeType: TGUID = '{414CF83E-4FA3-42AB-BC26-6C6BBF91BB0F}';
  IID_IColumnInfo: TGUID = '{3FDE0F44-4459-49F3-A012-E64F9BFA454D}';
  IID_IDrawingObject1: TGUID = '{649F0EB2-EBC0-449B-8B61-DC3CF1953BF9}';
  IID_IParametriticConstraint: TGUID = '{131069F4-A4E2-4DB4-A559-85EACCC74CE4}';
  IID_IKompasDocument1: TGUID = '{58890FE8-E671-4561-994A-600DD29032E4}';
  IID_IKompasDocument2D1: TGUID = '{FB57F1C4-44FE-4C73-9B15-87241E8735B5}';
  IID_IMacroObject: TGUID = '{B21C70C9-53EC-4BB7-A9DB-BCE852CA6716}';
  IID_IDrawingGroups: TGUID = '{0ED06421-907C-4EF0-89F7-AEFC81BEF1DF}';
  IID_IDrawingGroup: TGUID = '{2C96ACB2-4877-45D9-B62D-78BBAD704458}';
  IID_ICopyObjectParam: TGUID = '{58E1BACA-32D5-4EAB-87E9-D14816DAC29F}';
  IID_IDrawingDocument: TGUID = '{C2214318-5C89-40F8-A25C-C87D08B490F4}';
  IID_ISpecRough: TGUID = '{D723AAC1-0315-4AED-99BF-88A7E55B6E6D}';
  IID_ITechnicalDemand: TGUID = '{18C80AE5-BF92-482A-9C56-3D1638F5E5F5}';
  IID_IFragmentDocument: TGUID = '{E19CE626-DF9C-48C4-A83D-3E3BC7F0DACA}';
  IID_ISpecificationDocument: TGUID = '{E3FA8FD0-6187-4625-89B7-3C815651944D}';
  IID_ITextDocument: TGUID = '{71A589EA-D32F-42C4-BBC4-A51611E85E90}';
  IID_IPartDocument: TGUID = '{0075EA2A-5498-4E28-BDF3-0288EB168054}';
  IID_IAssemblyDocument: TGUID = '{F6B3F33A-3273-43EF-9B8A-7C0AF8FAA129}';
  IID_IDimensionText: TGUID = '{E0197BA7-C3FB-44A3-9C13-49115A150ED2}';
  IID_IDimensionParams: TGUID = '{534518CC-6577-4273-887A-6B833FDE6ED7}';
  IID_ILoadCombination: TGUID = '{E7F1FD16-B641-4264-859C-D47217DA8B04}';
  IID_IFrameTreesManager: TGUID = '{B9019350-FF1D-4161-B41B-CD1B020ECF36}';
  IID_IAttrTypeMng: TGUID = '{5378690E-A57D-473F-84DC-CA508B34FAD7}';
  IID_IPrintJob_OutputParameters: TGUID = '{CB083231-EE0D-4596-B04D-E6A020926557}';
  IID_IProperty: TGUID = '{C389F80D-228D-4FB1-B183-959AEA0B5906}';
  IID_IPropertyMng: TGUID = '{FD515235-4DBA-4F81-8D5C-6FE87C834562}';
  IID_IPropertyKeeper: TGUID = '{AE7377CB-28C6-468E-B667-73117BCDC300}';
  IID_IReportProcess: TGUID = '{29BBF2B8-A2E2-4E7D-BF04-0BB79C89EF35}';
  IID_IReportFilter: TGUID = '{9D111C31-1629-4A0B-89E5-8461CDFA2157}';
  IID_IPropertyControl1: TGUID = '{7D2A79FF-EC54-4480-B9F3-46F75293B558}';
  IID_IPropertyEdit: TGUID = '{1D238C4C-AAD7-4374-B372-013CF7FCEDB4}';
  IID_IPropertySeparator: TGUID = '{4504EFA0-D059-4FD4-B725-FA264D190869}';
  IID_IPropertyList: TGUID = '{8F53E9D5-07AD-412E-8C2A-509BC633C4FF}';
  IID_IPropertyCheckBox: TGUID = '{9205277D-B480-4AF7-B660-CCDC653F6453}';
  IID_IPropertyMultiButton: TGUID = '{3920A0BE-0628-47D5-B0F1-1DFEB77964BC}';
  IID_IPropertySlideBox: TGUID = '{E1DB38CD-A6D5-44B8-9AD0-0056B87924DD}';
  IID_IPropertyUserControl: TGUID = '{5A902C6C-A030-4F37-A089-91505BAEE466}';
  IID_IPropertyGrid: TGUID = '{6682B70F-59DB-4BF0-AB01-45B65B1BDED1}';
  IID_IPropertyTextButton: TGUID = '{3CDFE85F-643D-4008-AE32-379C0EB3FB7F}';
  IID_IPropertySpinEdit: TGUID = '{F214A46D-2BA9-40AD-A32D-E696EF9C895A}';
  IID_IPropertyFileName: TGUID = '{DB1F3224-837E-437F-8944-6FB9703F528B}';
  IID_IPropertyColor: TGUID = '{FC5CDCFB-3F67-43A1-8FC4-1278B901CE0E}';
  IID_IPropertyEditList: TGUID = '{FDB82760-7EA3-408E-8699-A8392ACFD810}';
  IID_IPropertyToolBar: TGUID = '{C2523B7E-EB4B-45DB-8E3B-9D6CCED99333}';
  IID_IPropertyBmpList: TGUID = '{D18D34F5-0028-4853-998C-25A48D141B43}';
  IID_IProcessInfoWindow: TGUID = '{06F93FBF-C65A-49B1-83DB-C736BA33F0A5}';
  IID_IPropertyLibExplorer: TGUID = '{2A214701-0BCB-406C-B57F-6DFADD799A64}';
  IID_IAssociationView: TGUID = '{0825F23C-0A73-48DE-BEAB-DA2FF39962C3}';
  IID_IViewDesignation: TGUID = '{5F9580DA-915C-4C28-991D-5DFFE3BF3B3C}';
  IID_IAssociationViewElements: TGUID = '{E4E42871-E799-4273-8EDB-E5EF83CC66C2}';
  IID_IBreakViewParam: TGUID = '{1B94C65D-3473-4FF2-B185-0B1C2C98FCAE}';
  IID_ICutViewParam: TGUID = '{D4C8B5AF-B2A1-4E07-9CD0-A1FC5B0BC1E1}';
  IID_IHatchParam: TGUID = '{437D6587-7649-4A0C-80BB-7A6E89661839}';
  IID_IDocument2DSettings: TGUID = '{B09A64BF-7AA6-4BF6-B8E8-AA8E8EE6E9D6}';
  IID_IDrawingDocumentSettings: TGUID = '{0DC39FC2-4FB1-489E-A76E-E47413199FA3}';
  IID_IFragmentDocumentSettings: TGUID = '{A33D05CF-EFFF-4BBE-9BE0-15D283425828}';
  IID_ILibItemSettings: TGUID = '{C474582A-2AD4-4ED5-A86A-A169C4DA5D54}';
  IID_IInsertionParameters: TGUID = '{1DB65C7E-535E-489E-8F34-84DF7FBA09B2}';
  IID_IInsertionDefinition: TGUID = '{66907239-09BA-4456-AC9A-318804099628}';
  IID_ITableCell: TGUID = '{CF9150BA-0E3A-46DE-8973-332A00361474}';
  IID_ITable: TGUID = '{D3715420-645E-435B-BB25-8E35AC570718}';
  IID_ITableRange: TGUID = '{D78E47DC-172B-4824-A519-9BC2C0387B5C}';
  IID_ICellFormat: TGUID = '{9F2F27E7-8FB2-4C6C-A54D-35DB240060D8}';
  IID_ICellBoundaries: TGUID = '{1E29E849-1D1E-4791-BD31-8EF00ED5D118}';
  DIID_ksPropertyManagerNotify: TGUID = '{5A89C538-E0DD-4C21-B3D1-3BF65EEB8C3E}';
  DIID_ksPropertyUserControlNotify: TGUID = '{5A31BB02-026C-4419-A0FF-A93CF58DCA99}';
  DIID_ksDocumentFrameNotify: TGUID = '{6ECBB531-5609-4364-AC92-7A6A21D23313}';
  IID_IPaintObject: TGUID = '{4D14726D-0EC2-49CE-B02C-FEDAA6D65BBD}';
  DIID_ksGLObject: TGUID = '{B1C65023-B908-4CAD-9238-C5026520E62C}';
  IID_IGabaritObject: TGUID = '{B6674824-CD9D-4220-B2CB-9F939A9C35C8}';
  DIID_ksDrawingObjectNotify: TGUID = '{E335A73F-DF27-4D33-8CBD-E928F797FB94}';
  DIID_ksViewsAndLayersManagerNotify: TGUID = '{FC04C62E-AB0F-4614-B3D9-0EA8671CEB08}';
  DIID_ksLibraryManagerNotify: TGUID = '{9B9CC387-E217-4EED-BCE9-9E1D645B49EE}';
  DIID_ksSpecificationDescriptionNotify: TGUID = '{A0DA14E6-4F92-4D18-8CD1-2BBAB695CE13}';
  DIID_ksSpecificationObjectNotify: TGUID = '{1C4DEC41-A8EA-40EE-9AC8-F807232DB874}';
  DIID_ksLayoutSheetsNotify: TGUID = '{58E30500-6073-4337-BFC1-32A74EA17DE8}';
  DIID_ksModelObjectNotify: TGUID = '{7B8E86E1-4304-449D-9CEC-1B14F74A16FB}';
  DIID_ksDocument3DNotify7: TGUID = '{C784D45B-8C68-4189-8F27-A3B0D6CFAEB2}';
  IID_IModelObjectNotifyResult: TGUID = '{73653933-51B5-49D6-9EF2-6667639283CC}';
  IID_IKompasDocument3DNotifyResult: TGUID = '{354EA69A-3191-4DA4-B980-821BE9B7683C}';
  IID_IModelContainer: TGUID = '{2C6E8A0F-EDC8-413C-9304-9278817B915B}';
  IID_ISketchs: TGUID = '{EE562963-395C-4748-9726-FCA9C531B1CA}';
  IID_ISketch: TGUID = '{E6BBF50D-8401-4FB3-A6B6-153D3F447255}';
  IID_IExtrusions: TGUID = '{A160C032-CF96-4467-A682-CE2243DF76BD}';
  IID_IExtrusion: TGUID = '{0D7FFE70-33EB-442C-A9B6-A205EA85A237}';
  IID_IPoints3D: TGUID = '{81EBB128-3963-4759-9D4E-2829C3078B0F}';
  IID_IMassInertiaParam7: TGUID = '{666C987F-2700-4C35-B8CE-DB8BFB5AAF02}';
  IID_IThinParameters: TGUID = '{B90D597D-4213-4A59-98D4-0B67E719551B}';
  IID_ICutExtrusion: TGUID = '{D2A01420-9159-48C2-8302-C1B10A13D8F8}';
  IID_IChooseBodies7: TGUID = '{7BF80DAA-25F8-4AFF-AFEA-CAD390D4275D}';
  IID_IBody7: TGUID = '{4F122E22-0AA6-46E1-841F-A2504B145995}';
  IID_ISheetMetalBodies: TGUID = '{F56DBE72-48CC-48AD-9DA4-10D972C903EE}';
  IID_ISheetMetalBody: TGUID = '{2DC533DC-829E-4EFF-A905-541E9220A12D}';
  IID_ISheetMetalContainer: TGUID = '{77A4895D-9B09-4C63-A3FF-6857F4340840}';
  IID_ISheetMetalBends: TGUID = '{6826CFD6-6A48-4EB1-8C89-7DB4E36702B4}';
  IID_ISheetMetalBend: TGUID = '{B631D95F-C487-41D6-9726-C65E9F5A4505}';
  IID_ISheetMetalLineBends: TGUID = '{AF8B8310-AF82-4B02-8733-783FFAFD4DBD}';
  IID_ISheetMetalLineBend: TGUID = '{E13EF07A-B1E8-41FD-9C85-C17F01E52A03}';
  IID_ISheetMetalHoles: TGUID = '{E117BDF9-5133-4672-9B8F-06046F6B9BF3}';
  IID_ISheetMetalHole: TGUID = '{3490B8B8-00D7-4BCF-AAD8-9487BF271084}';
  IID_ISheetMetalCuts: TGUID = '{9515E4BB-7C60-4C3A-AF7A-847861E67B55}';
  IID_ISheetMetalCut: TGUID = '{B50B1730-BACF-46F2-B10A-6CCDF4E4A2B1}';
  IID_IPoint3DParamDisplace: TGUID = '{6D57994F-C170-4CED-968A-6AD69C1A2C7D}';
  IID_IPoint3DParamIntersect: TGUID = '{C009F9ED-ED8A-4B1E-A4CE-156F43C3F6F3}';
  IID_IPoint3DParamCenter: TGUID = '{A92F2938-F1D4-475E-AAB4-962FAA4A4366}';
  IID_IPoint3DParamCurve: TGUID = '{06B6BDA5-1DC6-4321-8B28-AC065D87E060}';
  IID_IPoint3DParamSurface: TGUID = '{18CE6BBE-63FB-4C94-8998-E40BC5B5D1C6}';
  IID_IPoint3DParamProjection: TGUID = '{B5D353DD-5F26-42FD-87D3-01C97C44E1BF}';
  IID_ISourcePart7Params: TGUID = '{C9E03A9B-0A54-49AC-9397-8DE4465A8D1D}';
  IID_ISymbols3DContainer: TGUID = '{D695D345-7054-4BBD-8D36-8E1F5AEDC5ED}';
  IID_ILineDimensions3D: TGUID = '{8E30C80C-4C79-497B-A74B-84D44F96EF4D}';
  IID_IBaseLineDimension3D: TGUID = '{3514887E-321B-4CE3-A966-3EB1A02CEEF2}';
  IID_IRadialDimensions3D: TGUID = '{153924CD-E046-4334-8798-46A6D6663DE4}';
  IID_IRadialDimension3D: TGUID = '{5711B871-1FAE-425C-898E-583442D851CD}';
  IID_IDiametralDimensions3D: TGUID = '{79B5AC3B-9B2F-4C75-8482-3C0D6B07D911}';
  IID_IDiametralDimension3D: TGUID = '{261AE065-69B8-4B42-B103-C8746720C5BF}';
  IID_IAngleDimensions3D: TGUID = '{E0E8DB05-F71B-457E-BFEB-7EC2E803E77A}';
  IID_IAngleDimension3D: TGUID = '{C22870B5-F002-4C76-9E67-46854E938824}';
  IID_ILeaders3D: TGUID = '{C6E6BDD4-2B0E-49BF-87D3-04E800200DDC}';
  IID_IBaseLeader3D: TGUID = '{7170F38E-8230-4C9C-B36B-0BACBB27B123}';
  IID_IRoughs3D: TGUID = '{8533772B-1C43-4FDD-9F0E-BC92F15862C9}';
  IID_IRough3D: TGUID = '{083A4984-199E-4591-8FC3-CB8A9D7D4303}';
  IID_IBases3D: TGUID = '{8BC582B3-1F82-4D19-AF95-24CBAD412E52}';
  IID_IBase3D: TGUID = '{D5B737F6-FD3D-49F8-B3D8-C8475E5E3D3A}';
  IID_ITolerances3D: TGUID = '{82ADDA0C-B8DE-4336-A5CC-B36504A80E2D}';
  IID_ITolerance3D: TGUID = '{9CF700CF-72DB-44EB-A191-3814A3CC21BD}';
  IID_ILineDimension3D: TGUID = '{F38E986B-9CC0-4492-B850-180D3A6AF713}';
  IID_ICurveVertexParam: TGUID = '{2AD2E4B4-B870-437A-8D57-5807729FCB05}';
  IID_ISplines3D: TGUID = '{C4BC0839-932F-4DBC-9A84-5D1FE8927351}';
  IID_ISpline3D: TGUID = '{4D0940A0-6A4A-4CE8-A08A-EA0A4AE91942}';
  IID_ILocalCoordinateSystems: TGUID = '{CC04CBF6-F0D4-456E-903A-C0B0D3551368}';
  IID_IAuxiliaryGeomContainer: TGUID = '{950FEBE2-F916-4E77-A37D-B061E5C22FA8}';
  IID_IPolyLines: TGUID = '{0CF9B989-29F8-495F-9DDA-8C2CAD840BB6}';
  IID_IPolyLine: TGUID = '{6CE7843D-9AFA-48FF-B444-61CDF036D118}';
  IID_IControlPoints: TGUID = '{E22E30F6-05EE-4FB5-9EEB-E288234F256A}';
  IID_IControlPoint: TGUID = '{39F4FC2C-99E7-411B-9036-9C756A71E211}';
  IID_IConjunctivePoints: TGUID = '{4DF343A0-8744-429D-A605-0EEABB7B5F23}';
  IID_IConjunctivePoint: TGUID = '{BC7AD518-9599-490B-9E2B-9711FD9B8D4C}';
  IID_ISplitLines: TGUID = '{986E4A45-362F-469D-A3AE-CE081B8EA93A}';
  IID_ISplitLine: TGUID = '{969B49D1-E660-4E94-9343-DE5B0F397B03}';
  IID_ISurfacesIntersectionCurves: TGUID = '{453E0E34-4D2D-47B2-8E95-EB05C731961D}';
  IID_ISurfacesIntersectionCurve: TGUID = '{758420A0-BECB-4FDA-BDDE-1F398B41117C}';
  IID_IEquidistants3D: TGUID = '{8B94F332-EEFD-4610-9C55-20A1F7336122}';
  IID_IEquidistant3D: TGUID = '{C25DDBF4-3CC1-467D-B996-E30ED4D529B6}';
  IID_ILocalCSAxesDirectionParam: TGUID = '{919DF6DB-0BA9-4EDD-B681-33E0B519834B}';
  IID_ILocalCSEulerParam: TGUID = '{AD261149-1455-49BD-BA0A-B1760A0C8CB0}';
  IID_IRoughParams: TGUID = '{6C1943CE-8FDB-47D2-9B2F-95F7B851BE3D}';
  IID_IBranchs3D: TGUID = '{AFE08AEC-F751-42D9-A6F5-3C004E4D41A6}';
  IID_ILocalCSOrientByObjectParam: TGUID = '{618485E7-D88A-4DCC-8896-7EA04D831DBB}';
  IID_ILocalCSObject: TGUID = '{116F7E59-F175-47D2-8346-EB3C87D60578}';
  IID_ISurfaceContainer: TGUID = '{2FE3B199-A6B2-4644-9950-F9905250FF0D}';
  IID_ISurfacePatches: TGUID = '{DEE5B135-4D8E-4AD8-AEA4-E763F68290B2}';
  IID_ISurfacePatch: TGUID = '{B6330040-7ABA-4ECD-8C92-5B441AF11C3B}';
  IID_IFaceRemovers: TGUID = '{6E177627-05D6-40B4-B955-9203F00656B5}';
  IID_IFaceRemover: TGUID = '{4CAE21E3-4183-47A6-94B8-8AD14D5775EE}';
  IID_ISurfaceSewers: TGUID = '{70AE0BA0-2059-4EAB-BE41-A6E8C8ACFA8A}';
  IID_ISurfaceSewer: TGUID = '{031FD1C7-9CB6-4E49-A27D-73B8D0B648D4}';
  IID_INurbsSurfaces: TGUID = '{DB184867-6207-4FB7-9B3F-882BEAA16B4D}';
  IID_INurbsSurface: TGUID = '{5DAFC690-B3A7-4771-8E98-F83B5BF0D454}';
  IID_IColorParam7: TGUID = '{BE6A80EE-38FE-4432-8331-BF864830761C}';
  IID_IDrawingText: TGUID = '{E32E5703-0141-41CF-9917-9565648FE331}';
  IID_IDrawingTexts: TGUID = '{C72E0E9D-7078-4AA7-95E4-E8C75CA9BCEC}';
  IID_IDrawingContainer: TGUID = '{D603FEC9-75B7-4FA5-918F-47074C45B848}';
  IID_ILineSegments: TGUID = '{B211C782-A830-468E-9F4F-C499A77078D8}';
  IID_ILineSegment: TGUID = '{64ACC86F-4B10-4897-8552-BC0A556D228B}';
  IID_IArcs: TGUID = '{4FCB4C17-3B9E-45E8-B83C-9284027BAA0D}';
  IID_IArc: TGUID = '{A22DFB7E-21E0-4B28-9CA1-29B7950CF256}';
  IID_IMultilines: TGUID = '{968D7B84-2BC1-4354-AAFE-73192E405546}';
  IID_IMultiline: TGUID = '{F6CCB098-5710-44E3-8198-8FAFD56C7A6F}';
  IID_IContour: TGUID = '{E79F5A53-F456-4996-B620-16B725F134FB}';
  IID_IDrawingContours: TGUID = '{DBA3626C-12BE-4BFF-8D42-B01A78666BC9}';
  IID_IDrawingContour: TGUID = '{25509C3A-7B46-4E3F-B0E8-0E61B7548664}';
  IID_ICircles: TGUID = '{C8CA9255-E5FE-4396-9C3F-75EE7377C508}';
  IID_ICircle: TGUID = '{5C952F95-DFED-4EEE-B39A-6699EDE08676}';
  IID_IPoints: TGUID = '{8C6846A4-EE3B-4C00-A708-5C0FD01E21B7}';
  IID_IPoint: TGUID = '{D0C19C87-14E7-401D-AEF5-A2E88E899F6E}';
  IID_IBeziers: TGUID = '{57944ECC-5491-4551-9DB9-FABC45125A63}';
  IID_IBezier: TGUID = '{6D51EC19-200C-47A2-AE55-0593AD746851}';
  IID_IMacroObjects: TGUID = '{5B3F5454-160A-4981-B093-890E9A719AE3}';
  IID_ILines: TGUID = '{889A9B9C-7533-4EC5-8E2C-5ECF8228B06F}';
  IID_ILine: TGUID = '{3EA0DA9B-F2C0-40C4-BE36-7103509A9389}';
  IID_IPolyLines2D: TGUID = '{D1A9CB2D-A259-4CCC-9CD4-FA006494BCA7}';
  IID_IPolyLine2D: TGUID = '{4D0DA413-9507-4795-896F-E049FA6E44DD}';
  IID_INurbses: TGUID = '{88ECED7C-181C-4D9F-84DE-44B2E360F278}';
  IID_INurbs: TGUID = '{EE1AB9F4-B127-4303-A30D-C3509F6D10CD}';
  IID_IRasters: TGUID = '{C6E4E32D-E077-4B14-B9DE-041BD628C38C}';
  IID_IRaster: TGUID = '{DEED8D7B-404B-4F17-B42A-2F5E64818D0A}';
  IID_IOleDrawingObjects: TGUID = '{E7A8DD07-CD6B-45A6-B6AF-155A674BC7E4}';
  IID_IOleDrawingObject: TGUID = '{9A0ECE23-7B60-44E0-9728-C56CAAA455A2}';
  IID_IEllipses: TGUID = '{47633C44-93BB-4F41-A6CA-4F8CCAEA0659}';
  IID_IEllipse: TGUID = '{F60C9107-D8E2-433C-A0E3-A4E508D09353}';
  IID_IEllipseArcs: TGUID = '{CC5B7FCB-B887-4A47-AE6B-2522DFA24433}';
  IID_IEllipseArc: TGUID = '{320D837F-0B27-45B0-98B4-9D21156E9857}';
  IID_IRectangles: TGUID = '{D6BC2EE9-249F-4961-89A7-88DA854F35FE}';
  IID_IRectangle: TGUID = '{42F9FC58-FEA0-4E52-A604-1A00985AB772}';
  IID_IRegularPolygons: TGUID = '{80377CB2-073E-4C38-8532-C42A078BA719}';
  IID_IRegularPolygon: TGUID = '{51968648-F264-4904-A07F-653676AE1D35}';
  IID_IEquidistants: TGUID = '{86182E5E-8FA3-4283-9DC5-43D1673C80DA}';
  IID_IEquidistant: TGUID = '{EE6713F9-AD9A-466D-9FB9-D19235E42C95}';
  IID_IInsertionObjects: TGUID = '{C485550B-29E3-4F2A-A85C-C2795E0F1F86}';
  IID_IInsertionObject: TGUID = '{B9E9CE68-371D-4600-9233-84D89A015C55}';
  IID_IHatches: TGUID = '{B7E776B0-9524-4254-9D1F-0CF8E0314A1B}';
  IID_IHatch: TGUID = '{826C0B5B-0146-417A-8128-E581F8430F37}';
  IID_IColourings: TGUID = '{60437DAD-2688-4146-B765-3FCC55C39D0F}';
  IID_IColouring: TGUID = '{1E0EF1B5-08D3-40B6-893E-3EE7E4FAEC98}';
  IID_IMark: TGUID = '{B5D1A0BE-8F3C-4143-B9C5-66F0CF0FE74D}';
  IID_IMarks: TGUID = '{47585370-56BD-4419-82D9-DB7CBFB1A252}';
  IID_IMarkInsideForm: TGUID = '{E5C5A0FF-6CAB-4179-9BF3-868D96BF6AEA}';
  IID_IMarkOnLine: TGUID = '{5A1540F9-7388-466F-A13C-EB1133423DD9}';
  IID_IMarkOnLeader: TGUID = '{F3D7E6A6-26EA-4D68-AD58-4DE194C47B4E}';
  IID_IBuildingAxis: TGUID = '{123C45BF-14DE-433E-B3B0-2FB642A9A418}';
  IID_IMarkNode: TGUID = '{5AC48E97-80B1-459F-9709-1F3F374559BE}';
  IID_IMarkNodes: TGUID = '{EB8ACD77-8008-4F89-A311-2F4712462F72}';
  IID_IBuildingAxes: TGUID = '{18072E1D-1802-41F5-A434-04BB9D3F157F}';
  IID_IStraightAxis: TGUID = '{7B2820E0-2CB7-4412-9B96-F291DD790448}';
  IID_IAxisJut: TGUID = '{5A22E024-F530-45DB-A3F2-CA0587BDA1B5}';
  IID_IArcAxis: TGUID = '{DAA9755A-3971-4713-B281-15995CBF2E56}';
  IID_ICircleAxis: TGUID = '{D84358FB-674C-4A5D-93BA-EE5D3342097B}';
  IID_ICutUnitMarking: TGUID = '{2EDA58EE-DBDA-44CC-AD10-6895006D498C}';
  IID_ICutUnitMarkings: TGUID = '{23B00F94-98D3-4AD7-8827-F4088F4A9E5C}';
  IID_IUnitMarking: TGUID = '{86F46084-16A8-4B5C-99E9-F848216788F0}';
  IID_IUnitMarkings: TGUID = '{969AD901-FC09-47F5-94F5-1ABEB1A9C85C}';
  IID_IBuildingContainer: TGUID = '{FD1FD236-F5BA-4FB0-A872-21FC13E6895F}';
  IID_IMultiTextLeaders: TGUID = '{233B2298-7A45-4CE1-AEF2-30B063FDB63C}';
  IID_IMultiTextLeader: TGUID = '{1BFC5D3F-1483-4569-B4B5-7A12163A4655}';
  IID_IUnitNumbers: TGUID = '{598E649B-970C-454B-9162-1BB6C9FBFCBF}';
  IID_IUnitNumber: TGUID = '{FABAF607-CB92-47C4-9409-B7678162051D}';
  IID_IBraces: TGUID = '{99F27BD6-6294-45D9-AF78-A9D52E9DD799}';
  IID_IBrace: TGUID = '{7F328D28-76E9-4E04-A35C-AD60339998E4}';
  IID_ICutLines: TGUID = '{666DA5B4-324C-493C-9A91-37D9E078EB4E}';
  IID_ICutLine: TGUID = '{26E86124-DC1C-41A2-8075-E73F3EAD8474}';
  IID_ISymbols2DContainer: TGUID = '{F46B0086-17F2-4489-A5A7-0AA677610AFD}';
  IID_ILineDimensions: TGUID = '{A6F6A18A-78FA-4A77-BB75-90647E0C545C}';
  IID_ILineDimension: TGUID = '{A3767BDA-E605-4FC1-988D-81809DEB36F4}';
  IID_IRadialDimensions: TGUID = '{12D26993-449E-42E2-A909-B047AFD6E27D}';
  IID_IRadialDimension: TGUID = '{712A9437-D772-4EAE-AF83-ABC9C22EB281}';
  IID_IDiametralDimensions: TGUID = '{8E45FEB9-7BCD-4C9F-9767-320736980662}';
  IID_IDiametralDimension: TGUID = '{2B4CE92F-438D-4D3E-8F8D-4D14E5D0E214}';
  IID_IAngleDimensions: TGUID = '{DF9ABB77-BBB6-4B29-A0E0-81DCFD525C2E}';
  IID_IAngleDimension: TGUID = '{0F2CE9EC-5D2A-4B21-B96A-46201C120ED1}';
  IID_IBreakLineDimensions: TGUID = '{4125169F-3EA8-4AC0-9E1B-5582D62600C4}';
  IID_IBreakLineDimension: TGUID = '{61164A26-855C-4220-88ED-C2BDAF49B2DB}';
  IID_IHeightDimensions: TGUID = '{3A56D35C-3242-4C49-BA99-CF790EB10356}';
  IID_IHeightDimension: TGUID = '{938BE57F-55FF-469F-82A5-B1CD6CCF8340}';
  IID_IArcDimensions: TGUID = '{FE2755D9-48E2-44CC-BC24-86CF86BE08E2}';
  IID_IArcDimension: TGUID = '{11487495-B18A-4877-9E85-3DC9016DF8BD}';
  IID_IBreakRadialDimensions: TGUID = '{E2181A3E-5417-4D73-AB65-983DED3438E0}';
  IID_IBreakRadialDimension: TGUID = '{88491537-9E93-42F3-861C-761A75BB89D6}';
  IID_IRoughs: TGUID = '{ACC42B32-27F3-4F74-B4A5-C97D4C7B289D}';
  IID_IRough: TGUID = '{0A192AC5-D8BC-43E9-8FC7-ACF32578DDB4}';
  IID_ILeaders: TGUID = '{BA2D820C-0DB9-47C6-A32D-34C7D8BA1B2F}';
  IID_IBaseLeader: TGUID = '{1AF590A9-C339-477A-9F22-799C04D20BB4}';
  IID_IBases: TGUID = '{C607727C-6B0A-4FB6-AFCA-ED9D83F5C6B7}';
  IID_IBase: TGUID = '{01CDFD67-69EA-4289-8F42-5B01BB9BF70B}';
  IID_ITolerances: TGUID = '{97CDD55F-3C64-469B-B26E-A927D3300B6C}';
  IID_ITolerance: TGUID = '{42DEF911-ADB2-478C-85F1-D5FEFA262EEC}';
  IID_IDrawingTables: TGUID = '{DF92DACE-BDC6-4341-86DA-3A9C8DCFDEFE}';
  IID_IDrawingTable: TGUID = '{9B421BDA-0444-4A68-B69C-1C05D05C9D28}';
  IID_IViewPointers: TGUID = '{08B45C97-6F86-4809-BBC3-78F216BD0430}';
  IID_IViewPointer: TGUID = '{3EE98177-63E8-4C48-89AD-3D5CCCF84D72}';
  IID_ICentreMarkers: TGUID = '{A0533211-CF52-4AB5-A172-3DC7D94276D1}';
  IID_ICentreMarker: TGUID = '{8FE1CADA-DE72-4A55-B303-EAF1F4748CF6}';
  IID_IRemoteElements: TGUID = '{88427A6B-00AF-46E2-9B95-BC8348C2162A}';
  IID_IRemoteElement: TGUID = '{A9D96CE2-9FE4-494E-87B2-20122EAC2AE4}';
  IID_IAxisLines: TGUID = '{C567E700-E163-4C8F-B329-931BB93D0223}';
  IID_IAxisLine: TGUID = '{5C5CAEBD-70A9-41DB-9F74-F9760D822D95}';
  IID_IWaveLines: TGUID = '{C1F0A911-8B4A-48B5-9611-5250D3FC2ACA}';
  IID_IWaveLine: TGUID = '{FA2012E1-A983-47D3-9D43-B8DC619AC554}';
  IID_IBrokenLines: TGUID = '{2A7EADC0-5E79-4DDB-85D5-E3EDB743480D}';
  IID_IBrokenLine: TGUID = '{2482EB44-5625-4FB9-A46B-781426B02510}';
  IID_IBreakAngleDimension: TGUID = '{F6ED408A-C2A8-47DD-8EC3-011A7AD60335}';
  IID_IBranchs: TGUID = '{C8A55AB3-D6DD-49B8-95F0-716475855C10}';
  IID_ILeader: TGUID = '{A7419920-06B8-4F34-AC1E-9D48E0ED9DCB}';
  IID_IMarkLeader: TGUID = '{8A5D2A56-ECB6-4151-B1AC-F8548CD668CF}';
  IID_IPositionLeader: TGUID = '{A8227628-4B9C-42C8-AE58-B3716A7EC1AF}';
  IID_IChangeLeader: TGUID = '{CCFBE87D-1A3C-4C8B-ABE3-1C2319694314}';
  IID_IBrandLeader: TGUID = '{EEF8366B-7C8D-448B-9944-BE63E82C1543}';
  IID_IToleranceParam: TGUID = '{46E2F216-6BCE-4863-9DDC-CC08DC0016F7}';
  IID_IContourSegment: TGUID = '{AA485B32-FF45-4035-BFC4-AEE54E638344}';
  IID_IContourLineSegment: TGUID = '{FB2432F1-8AE7-4D43-AFF2-A3A3BE226CFA}';
  IID_IContourArc: TGUID = '{ED4A6D97-4543-4842-B2C3-973FB0E90E87}';
  IID_IInsertionFragment: TGUID = '{3D99B82C-CD88-406D-A946-2D8C8E94EE73}';
  IID_IInsertionView: TGUID = '{0C8FC5A9-57A8-4971-8E6C-68933269D42E}';
  IID_IInsertionsManager: TGUID = '{B43FA13A-9488-422C-A9F3-D279FDA296BB}';
  IID_IAxisLineParam: TGUID = '{620CC8EB-A5C0-4978-BD98-38344DC6ADC0}';
  IID_IBoundariesObject: TGUID = '{7198C93A-7655-4347-9954-BA9AA28D0608}';
  IID_IAnnotativeObject: TGUID = '{0DBD7BCD-F78E-4BDA-BCAD-3004C60B6D06}';
  IID_IAnnotativeContainer: TGUID = '{AE6C238C-4398-4057-9D28-D275954D9506}';
  IID_ICurveCopyObjectParam: TGUID = '{12B52A99-FF5F-4C08-9E5E-DF7C7AD834A8}';
  IID_ICircleCopyObjectParam: TGUID = '{138D1202-CA46-4DB3-BF2B-85D260E44355}';
  IID_IExternalTessellationObject: TGUID = '{9D5CDE37-7833-4359-B25A-FE7011EA771A}';
  IID_IExternalTessellationManager: TGUID = '{DC21F3D3-FFA6-4274-A976-79F34729B866}';
  IID_IExternalGDIObject: TGUID = '{C234E81D-4232-41FD-980D-8E7E6EA7B733}';
  CLASS_KompasDocument: TGUID = '{DBBB268E-19D3-40DE-B77C-987CA15FE711}';
  CLASS__Application: TGUID = '{8C3719B5-0DF2-4C12-9CA8-3AF4827A3BBB}';
  CLASS_Documents: TGUID = '{385647BD-89B1-4F2D-A06E-4DD829EE096B}';
  CLASS_DocumentFrame: TGUID = '{8BFFC9B4-5FE7-4EC5-8BA5-0FF8520D5FF6}';
  CLASS_DocumentFrames: TGUID = '{CC89942A-6FE5-4808-8DC8-FF46D546A8EB}';
  CLASS_ProcessParam: TGUID = '{4C33DE6E-FEAC-4C28-9EE0-32C37F8E7A48}';
  CLASS_PropertyControls: TGUID = '{74D54FDD-62D0-4544-89C9-999612EF6DEF}';
  CLASS_PropertyTab: TGUID = '{1C2A5766-B80A-4752-8509-217574965BF3}';
  CLASS_PropertyTabs: TGUID = '{52110F5F-7BF2-4079-B3AE-A7B716A7EB1E}';
  CLASS_PropertyEdit: TGUID = '{E4AFCB78-574F-4960-9D92-B23888D700CD}';
  CLASS_PropertySeparator: TGUID = '{59DA09ED-130F-43AF-86B8-EAC8E0C7D0A2}';
  CLASS_PropertyList: TGUID = '{404CF845-9BF6-4AAD-97A1-B9A173ACF96D}';
  CLASS_PropertyCheckBox: TGUID = '{8CF06399-B7EB-46EB-8B08-5603C589FE0F}';
  CLASS_PropertyMultiButton: TGUID = '{B734CA6E-CA21-4CCD-AEE8-94BC8F9D4986}';
  CLASS_PropertySlideBox: TGUID = '{9988AC8D-657B-4B2A-8338-EC315CBBA70E}';
  CLASS_PropertyUserControl: TGUID = '{725A98DC-9987-4A79-BDA2-F5024E2D0FF3}';
  CLASS_PropertyGrid: TGUID = '{F0F9573F-BE07-4251-86E5-2AA24AA3D43A}';
  CLASS_PropertyManager: TGUID = '{1B9CBAB1-99DA-433E-8D4E-6761D1AB9B8A}';
  CLASS_KompasDocument3D: TGUID = '{9237AAFE-992B-4521-BF68-3A0C6D7F7769}';
  CLASS_DrawingDocument: TGUID = '{5414B05F-A731-4369-BBD2-419B5CD9D2A2}';
  CLASS_FragmentDocument: TGUID = '{86CA15DA-A197-4993-AB98-8921D156114E}';
  CLASS_SpecificationDocument: TGUID = '{2D43B764-4F8A-47A6-AAAB-52B59CE5A08D}';
  CLASS_TextDocument: TGUID = '{F5CF81CF-F6C3-4D9C-B393-6DF532BFB45D}';
  CLASS_PartDocument: TGUID = '{427D2E6B-8D4E-4F9F-99AC-F9E0FB22D25C}';
  CLASS_AssemblyDocument: TGUID = '{705B37C7-CA52-4588-980E-1105C919E20C}';
  CLASS_PropertyTextButton: TGUID = '{D4F68E4E-2092-436A-B6FB-B8A335A671FD}';
  CLASS_PropertySpinEdit: TGUID = '{F4710743-A53B-4256-A450-16D0D40C87AA}';
  CLASS_ViewsAndLayersManager: TGUID = '{2E3092B1-3B1A-4060-B202-B0C6F4177973}';
  CLASS_DrawingObject: TGUID = '{3310AC4A-DC93-4AB5-B2CD-5391E6CB370A}';
  CLASS_DrawingObjects: TGUID = '{5F90A46E-EA28-4294-B34F-145C80141517}';
  CLASS_Views: TGUID = '{675CDFC9-4ED8-4689-8A15-BE9CC85CFBDC}';
  CLASS_View: TGUID = '{ADBF03AF-24D4-4CA8-BF0E-7F6E403D4E55}';
  CLASS_AssociationView: TGUID = '{9F144F3A-A296-46C6-99C2-1877B83B0E63}';
  CLASS_LayerGroups: TGUID = '{E53FFD4E-619D-4B9B-9C34-9C23668E6F4A}';
  CLASS_LayerGroup: TGUID = '{5543C50A-B56D-48AF-87C3-09C1B48CBC5A}';
  CLASS_Layers: TGUID = '{C0402ED4-D1AB-4567-BE4F-AFD88AF848EC}';
  CLASS_Layer: TGUID = '{392916B8-171E-4229-9E75-1D514C75FB17}';
  CLASS_LayerFilterCondition: TGUID = '{21D31870-5EBC-42CE-8858-A308E7E4B8A4}';
  CLASS_LayerFilterConditions: TGUID = '{9F90DA69-2CA3-4C2E-AB59-6BB9B0E7DFB8}';
  CLASS_DocumentSettings: TGUID = '{64964B4C-5A02-41D8-B6EC-F7CF627564E6}';
  CLASS_Document2DSettings: TGUID = '{EBB0EE6B-305C-4448-9674-3F5072606D47}';
  CLASS_LibraryManager: TGUID = '{AACB5896-8918-43CB-A5B4-F3EAF45BCEF7}';
  CLASS_ProceduresLibrary: TGUID = '{E865B51E-8276-4F7E-A20B-509DC25679B1}';
  CLASS_Procedures: TGUID = '{0EA0000E-9328-488D-B611-9F72EECCD92D}';
  CLASS_Procedure_: TGUID = '{5D9929F6-3D65-4DAF-B146-A85FA98F2356}';
  CLASS_InsertsLibrary: TGUID = '{9A06D2A1-BCDE-4C43-88A1-5A491469BE11}';
  CLASS_Inserts: TGUID = '{F8527798-EB6E-43C6-AE05-6FA964CFD96B}';
  CLASS_Insert: TGUID = '{5D1BD639-051F-48C5-BCA7-7698B4D070B4}';
  CLASS_InsertsLibraries: TGUID = '{6C64BD39-1613-4AD4-B5BA-B6F38D32E82C}';
  CLASS_ProceduresLibraries: TGUID = '{DBC3AC55-2823-4661-9740-54843BA72B12}';
  CLASS_SpecificationDescriptions: TGUID = '{77168B66-5A17-4694-ADDF-848E314EE0D1}';
  CLASS_SpecificationDescription: TGUID = '{AD076943-BF97-4802-9D4F-D28C6C41E966}';
  CLASS_SpecificationStyle: TGUID = '{7E9787DC-72ED-452D-8EF5-FD3D21259712}';
  CLASS_SpecificationColumnStyles: TGUID = '{EC3F7C56-6A3B-45AC-BF81-614B7B045BAA}';
  CLASS_SpecificationColumnStyle: TGUID = '{FF5E4685-8914-4382-97C9-C73FFED73449}';
  CLASS_SpecificationSectionStyles: TGUID = '{25B2EDD7-FB95-4FE6-BA9C-B296531EA6C7}';
  CLASS_SpecificationSectionStyle: TGUID = '{A862B550-CAED-48FD-889D-C1507A30D241}';
  CLASS_AdditionalBlockStyles: TGUID = '{2A248D5E-8B8F-4F43-91EC-10C7F02E2064}';
  CLASS_AdditionalBlockStyle: TGUID = '{704BC0BD-189C-4B8B-A97A-AB5F0C6897EF}';
  CLASS_SheetFormat: TGUID = '{B872A3A8-C21F-487B-A44D-B168398E014A}';
  CLASS_SpecificationTuning: TGUID = '{C6410109-2800-476B-82EE-202C766B515D}';
  CLASS_SpecificationTuningSections: TGUID = '{B64E5FBC-99D3-4CBF-989F-0F832F3C7B5F}';
  CLASS_SpecificationTuningSection: TGUID = '{03D146C9-35D2-4FBF-B051-053711FCA51B}';
  CLASS_SpecificationSubsections: TGUID = '{79130306-1FB8-49FD-85D2-A6C235B91638}';
  CLASS_SpecificationSubsection: TGUID = '{C82A6A36-CF62-43CE-A180-FA1268AE0116}';
  CLASS_AdditionalBlockTunings: TGUID = '{B6CC6F97-B1F1-42CF-ADC7-7875B06A7089}';
  CLASS_AdditionalBlockTuning: TGUID = '{D62780C1-EDD6-49B6-B619-04E22189D288}';
  CLASS_AdditionalBlockSectionTunings: TGUID = '{821A5929-98F3-4C67-BC2C-D3A8A1442086}';
  CLASS_AdditionalBlockSectionTuning: TGUID = '{39BDE053-03AA-4B95-8E25-5B8041C7BE12}';
  CLASS_TextFont: TGUID = '{7F52DDDE-FD30-40DF-97E9-B606A005FD14}';
  CLASS_TextStyle: TGUID = '{92523524-1E11-4193-AD5F-E2381555DCC6}';
  CLASS_Tabulators: TGUID = '{C0D50C82-511E-4554-8296-EDFF2AE66C4C}';
  CLASS_Tabulator: TGUID = '{D65E21E0-4B98-401D-86B5-712E0AA56CEC}';
  CLASS_KompasError: TGUID = '{A5B4DB5F-0554-4D75-915B-3F838F18C809}';
  CLASS_SpecificationBaseObjects: TGUID = '{E2FD0C57-3E8A-4EC2-A1E9-7BEB75E3AB7C}';
  CLASS_SpecificationCommentObjects: TGUID = '{77CFDEBF-2DF0-4B67-8825-78DF712A0497}';
  CLASS_SpecificationObject: TGUID = '{77A64147-06A5-4843-8C6F-F0E35F0ED951}';
  CLASS_SpecificationBaseObject: TGUID = '{41FCDD59-6012-4E46-84DC-04934683B098}';
  CLASS_SpecificationCommentObject: TGUID = '{6F0354E0-9AB0-47AC-80E8-10FB48C59340}';
  CLASS_SpecificationColumns: TGUID = '{A641E019-073F-49F5-97BC-A9D5FFB063D8}';
  CLASS_SpecificationColumn: TGUID = '{B5216B74-0577-41D5-9B62-C71674EC9330}';
  CLASS_SpecificationColumnItems: TGUID = '{86172CF0-0BED-46E0-B2E1-DD43ABF09290}';
  CLASS_SpecificationColumnItem: TGUID = '{D1A46669-AF0C-43EE-ACB6-E765D06BED4A}';
  CLASS_AttachedDocuments: TGUID = '{7E97523D-C412-4DA4-9FEC-E4769E88B340}';
  CLASS_AttachedDocument: TGUID = '{30251A40-34EA-4DA6-A0B0-66E7A556A813}';
  CLASS_PropertyFileName: TGUID = '{BBB62BA6-AC05-4D05-BFF2-BC8579A2C5FC}';
  CLASS_PropertyColor: TGUID = '{77E6E019-A5A1-4318-B98E-CD970D248EA0}';
  CLASS_LayoutSheets: TGUID = '{1EF17E36-3C4D-4C86-AD1B-17E744075DF8}';
  CLASS_LayoutSheet: TGUID = '{5331E747-7833-4988-92CA-90283160DDF6}';
  CLASS_Converter: TGUID = '{A496A838-57F7-4BEC-99FF-51D4782C60AE}';
  CLASS_CheckSum: TGUID = '{D3154740-6BF5-47F6-9A02-486F78190791}';
  CLASS_ModelObject: TGUID = '{DB0070F0-C367-4DB5-B722-9CFE69895657}';
  CLASS_ModelObjects: TGUID = '{B0223EED-4659-4EAC-BDA2-20B0FDD4E7B7}';
  CLASS_Parts7: TGUID = '{CB826C3D-9968-4546-BCD7-BA65F6B84902}';
  CLASS_Part7: TGUID = '{314057D1-5EFD-4980-8AB8-4E0CC3F7E756}';
  CLASS_Sketchs: TGUID = '{6F94D909-E9C7-4496-8F5B-01F0B03FF409}';
  CLASS_Extrusions: TGUID = '{2B4C99E4-FB5D-4D7D-A44D-5B898E1F5E9E}';
  CLASS_VariableTable: TGUID = '{B49FD0E4-26AC-48DE-AD0E-7DFA902DF2B7}';
  CLASS_ProgressBarIndicator: TGUID = '{9361276C-70A0-4000-82D2-90FB546C98D4}';
  CLASS_Text: TGUID = '{393AB030-F683-470C-8F4E-AA93BF3162CC}';
  CLASS_TextLine: TGUID = '{FDFD93BC-11C4-42A9-9C8F-A4FB206274B6}';
  CLASS_TextItem: TGUID = '{58CED17B-2AA8-4DF8-B215-811DDE72DF3C}';
  CLASS_DrawingText: TGUID = '{2E194B4E-F08D-4D62-A9B8-849004D8D923}';
  CLASS_DrawingTexts: TGUID = '{5F4C3AA0-4B59-4EEE-AB00-53CEA8909F66}';
  CLASS_Marks: TGUID = '{C0DEA6BF-0AD5-4C55-AD3D-A3F145943E47}';
  CLASS_MarkInsideForm: TGUID = '{CDABB418-649A-4AB9-8A92-C51789075912}';
  CLASS_MarkOnLine: TGUID = '{84CAA3BB-3E7A-4185-82BC-85D4102D5DEF}';
  CLASS_MarkOnLeader: TGUID = '{CF195C37-A915-48CA-9F6B-6B3845FED05B}';
  CLASS_UserDataStoragesMng: TGUID = '{13BCC1C9-C582-4616-89EE-4CD250595CC4}';
  CLASS_UserDataStorages: TGUID = '{1B57D1CF-CBEA-4DBC-9452-50E367784958}';
  CLASS_UserDataStorage: TGUID = '{4C7C5A7E-AD2C-4B1F-82B9-73476837E020}';
  CLASS_BuildingAxes: TGUID = '{B879C6F6-5AB0-4BEE-8872-FE87C621F15B}';
  CLASS_StraightAxis: TGUID = '{04728D73-A533-4C98-B0BF-92A8A02E6F4C}';
  CLASS_ArcAxis: TGUID = '{AE2C24D6-17E4-4E5F-BA2B-ED62AC2323EC}';
  CLASS_CircleAxis: TGUID = '{8A706E75-73FF-4FBF-8D3F-61A13513C7EB}';
  CLASS_AxisJut: TGUID = '{97559604-8CCC-44E4-B332-7E16C34522D5}';
  CLASS_MarkNodes: TGUID = '{6681105E-35E0-4E76-9E64-0AB8B50E6149}';
  CLASS_MarkNode: TGUID = '{B98EA663-66BC-46C0-A86C-1FE40AF8A3D8}';
  CLASS_LineSegments: TGUID = '{B7B673AF-5E78-45AA-8C78-894D1F4F77AC}';
  CLASS_LineSegment: TGUID = '{EE1993AD-CAC2-421C-B9B1-131BA16466CF}';
  CLASS_SystemSettings: TGUID = '{31C4845E-508F-43F0-A57F-E7602A0E45E6}';
  CLASS_CutUnitMarking: TGUID = '{BE66B386-7D76-4AFC-AC47-521B6648CB8F}';
  CLASS_CutUnitMarkings: TGUID = '{DDEFF219-E3BC-457F-87FF-3C3ADCFA720E}';
  CLASS_UnitMarking: TGUID = '{82BE653C-832A-4611-941F-D27BE733530B}';
  CLASS_UnitMarkings: TGUID = '{2156B173-A854-4714-BE90-6F9ADE48E2AF}';
  CLASS_Arcs: TGUID = '{307690EF-0E80-4CD1-93E1-49288C5697A7}';
  CLASS__Arc: TGUID = '{6BA18A3D-28A8-47C3-A97C-E324282F93FD}';
  CLASS_MultiTextLeader: TGUID = '{123D60BB-0331-4726-9707-777615E9D354}';
  CLASS_MultiTextLeaders: TGUID = '{AF30B851-0AE8-4F62-B7DB-1DF52D9316F2}';
  CLASS_Brace: TGUID = '{2DF7A8F9-CB3B-499E-867F-81BA5B41ED57}';
  CLASS_Braces: TGUID = '{82CD752F-BC4F-45A2-9FE9-8AB01FDAF6C9}';
  CLASS_UnitNumber: TGUID = '{515C7A0D-0120-4CC4-A5F0-67473D7D95D3}';
  CLASS_UnitNumbers: TGUID = '{624E4C7C-156C-4FD9-8DA8-CEB9750860D1}';
  CLASS_Sketch: TGUID = '{FC43EA04-ADED-4D42-883A-11073E2E68EC}';
  CLASS_Extrusion: TGUID = '{9D3CAF4C-4D9D-40EC-BE5A-12A3AC595007}';
  CLASS_ParametriticConstraint: TGUID = '{7536F0BF-2857-4A01-ACFA-5DDF1C9840A8}';
  CLASS_CutExtrusion: TGUID = '{B60B0F24-9069-4AB4-B0E4-DC558A6BF4A3}';
  CLASS_Body7: TGUID = '{29E7E8D5-7988-408F-A02B-7C0871221C9C}';
  CLASS_SheetMetalBodies: TGUID = '{DC4C565F-935D-4F7A-97A5-DB4D252F6B91}';
  CLASS_SheetMetalBody: TGUID = '{1301DC0F-CDF1-4EB1-90B4-D06EA2610F0B}';
  CLASS_Points3D: TGUID = '{2B0C2912-59D7-4976-9E57-20D83CDA9038}';
  CLASS_Point3D: TGUID = '{A4CA403F-B960-4E41-A350-C07D15115DC2}';
  CLASS_Point3DParamDisplace: TGUID = '{7E00821A-E79B-412B-9A51-ADB9664C23A0}';
  CLASS_Point3DParamIntersect: TGUID = '{DE8A8774-6705-4971-BA1F-F889E7E3752C}';
  CLASS_Point3DParamCenter: TGUID = '{02DA512F-097F-4911-8E27-8C546ED4B22A}';
  CLASS_Point3DParamCurve: TGUID = '{AAC9EE7F-C69F-48DD-9A38-8E38C38BAB28}';
  CLASS_Point3DParamSurface: TGUID = '{E5490B1D-49E8-4042-BEAA-C666952D3B1B}';
  CLASS_Point3DParamProjection: TGUID = '{BD60E7D5-0E9E-4E00-A27B-08C11CFD41BD}';
  CLASS_SheetMetalBends: TGUID = '{E82B9381-1BA1-4CD8-8F0A-0F7AAB0777CE}';
  CLASS_SheetMetalBend: TGUID = '{C84C5989-2AE1-4E61-9C29-88028C8873A2}';
  CLASS_SheetMetalLineBends: TGUID = '{C7DF1AFE-A3EF-427A-B732-70DEFDDB351D}';
  CLASS_SheetMetalLineBend: TGUID = '{DCA09F8B-187B-400B-AFFA-D1EC84251EC2}';
  CLASS_SheetMetalHole: TGUID = '{6D725058-9A30-49B2-8BA6-466F2807E232}';
  CLASS_SheetMetalHoles: TGUID = '{D11BBACB-3A8A-4B3F-9DEC-C17CC9989083}';
  CLASS_SheetMetalCut: TGUID = '{17CDFC21-A515-4011-BCC6-A3420219E19D}';
  CLASS_SheetMetalCuts: TGUID = '{A0C32567-9107-4695-A9B0-4D991B58689E}';
  CLASS_RadialDimension: TGUID = '{F6910669-B8FC-4F05-872E-BA10DE0964A4}';
  CLASS_RadialDimensions: TGUID = '{BD3D6D8C-C5D8-42F0-926D-FD995EE6D232}';
  CLASS_BreakRadialDimension: TGUID = '{60ADBA37-9540-40E9-8F52-03E80E3F423E}';
  CLASS_RadialBreakDimensions: TGUID = '{2782662C-D266-46D6-9BF5-6E4612D32D9F}';
  CLASS_DiametralDimension: TGUID = '{117E5AB9-3D8C-4F14-BB4B-14FF43082EA7}';
  CLASS_DiametralDimensions: TGUID = '{2195AC03-677A-4236-9BEA-FBDE74CEE7F3}';
  CLASS_LineDimensions3D: TGUID = '{BC66C415-362A-4246-850F-A7D39BDE6C1B}';
  CLASS_BaseLineDimension3D: TGUID = '{F8E92C35-23B4-4058-85E5-324B46FB551F}';
  CLASS_LineDimension3D: TGUID = '{0FD2290E-6FF6-48C4-9B10-E1C6D0608C74}';
  CLASS_LineDimension: TGUID = '{A7B94E84-CB49-4021-8AC2-27ADC8036B4D}';
  CLASS_LineDimensions: TGUID = '{D44491CE-CDD2-4435-AFAB-7AEC8E58D912}';
  CLASS_RadialDimension3D: TGUID = '{1072B7E5-9C4B-44F2-A8F0-1A60C59D4909}';
  CLASS_DiametralDimension3D: TGUID = '{FC1FC235-02C5-41D5-871B-D754926B593E}';
  CLASS_RadialDimensions3D: TGUID = '{7245F71F-E655-4102-8C2C-B4E6D2FA26D8}';
  CLASS_DiametralDimensions3D: TGUID = '{F3F0EDE3-3E00-48E8-922F-121CA571BE26}';
  CLASS_BreakLineDimension: TGUID = '{9F6632A5-AAA8-4BF3-94AA-ADF2838BEC74}';
  CLASS_BreakLineDimensions: TGUID = '{865EDBB6-F511-45EF-AA82-C19AD126F9B9}';
  CLASS_HeightDimension: TGUID = '{CA99C371-8E76-4FE0-A176-A33FC6D2FDFC}';
  CLASS_HeightDimensions: TGUID = '{2A942576-E76D-4375-A1D9-0CCC4B382786}';
  CLASS_AngleDimension: TGUID = '{BEABBB41-F220-43AB-9922-39BF76207E2A}';
  CLASS_AngleDimensions: TGUID = '{82DDC7DF-D7C3-41A6-9913-DEB4CE349203}';
  CLASS_BreakAngleDimension: TGUID = '{D33D3BFC-BEDC-4E91-A78C-D03461379E15}';
  CLASS_ArcDimension: TGUID = '{37F30E53-7355-436D-8EEF-3B1DE7E9EFCE}';
  CLASS_ArcDimensions: TGUID = '{D18DFB31-8A26-4281-BF18-C462CEDBE714}';
  CLASS_AngleDimension3D: TGUID = '{9D769F23-62B6-46FB-9BC9-A74A28E98501}';
  CLASS_AngleDimensions3D: TGUID = '{154CBD57-2124-4667-BECA-61A6D8AB380A}';
  CLASS_CurveVertexParam: TGUID = '{114075C2-6D73-4198-A29A-F05D772FC75D}';
  CLASS_Splines3D: TGUID = '{A7899FAC-ECF5-40AC-9267-97B98B849570}';
  CLASS_Spline3D: TGUID = '{CF10FB1D-FE72-48A2-A36B-19B63594D674}';
  CLASS_LocalCoordinateSystem: TGUID = '{E39CAE1D-9B07-4171-8A97-90D9E7E475D4}';
  CLASS_LocalCoordinateSystems: TGUID = '{C2EB441C-8053-4ECB-961F-D0607769B508}';
  CLASS_LocalCSAxesDirectionParam: TGUID = '{D9B8494F-9693-488D-AC64-1EEE767737E9}';
  CLASS_LocalCSEulerParam: TGUID = '{D49278A6-1476-48FB-9374-CD066742B0AC}';
  CLASS_PolyLine: TGUID = '{1F490D96-2098-40E6-BB73-52DD0A71111A}';
  CLASS_PolyLines: TGUID = '{1DC144A1-0F9F-4D93-98EC-53BFCCF795FE}';
  CLASS_BaseLeader: TGUID = '{7A899963-5137-459A-AB0A-48653074BCD0}';
  CLASS_Leaders: TGUID = '{90E9D9E8-1451-4BA1-97A6-4BE6D1508649}';
  CLASS_Roughs: TGUID = '{55912A9B-6387-4946-80B9-C30D1DD30D07}';
  CLASS_Rough: TGUID = '{1237C011-5D75-4EBF-B53A-744AA16D7EC7}';
  CLASS_BaseLeader3D: TGUID = '{31DC80A4-BCC8-45C1-8CE1-6C43E24FD96C}';
  CLASS_Leaders3D: TGUID = '{9B18CB77-9EDD-440C-B154-969F1B5C7B98}';
  CLASS_Rough3D: TGUID = '{48398FC6-D508-4F69-A292-840AC4C7DB69}';
  CLASS_Roughs3D: TGUID = '{D2ED0BEB-1705-4D5F-B8C4-F0D88B49AB2D}';
  CLASS__Base: TGUID = '{700819A4-82B8-4E32-B516-DB0ED48D1D05}';
  CLASS_Bases: TGUID = '{2D2BC5F4-2D44-4C4E-A20E-1F8D8095DF73}';
  CLASS_TableCell: TGUID = '{7C3AD6F0-625E-4756-8C64-A04783653A72}';
  CLASS_DrawingTable: TGUID = '{020B47A5-6B61-48B2-80F6-3A607E0E0A94}';
  CLASS_DrawingTables: TGUID = '{E0C24704-8D4E-45BA-9175-972D58E37C7F}';
  CLASS_Tolerances: TGUID = '{6E4F37E5-2F92-4A22-97EF-F5AEC374343A}';
  CLASS__Tolerance: TGUID = '{BD78C015-15E7-45F6-AD21-D737007ED7C1}';
  CLASS_Bases3D: TGUID = '{DBF9FA07-8FE1-46DE-B236-9931388FF543}';
  CLASS_Base3D: TGUID = '{DAAE59DF-E97C-4434-9166-8A52BEA0FF31}';
  CLASS_Tolerances3D: TGUID = '{EE1CF4A7-CB7E-42C2-854D-32EB10E28C78}';
  CLASS_Tolerance3D: TGUID = '{68C4A672-8029-40E8-9203-E50046072BCF}';
  CLASS_LocalCSOrientByObjectParam: TGUID = '{9018B030-43B0-4A67-AE2B-11F14AB2716D}';
  CLASS_CutLine: TGUID = '{DE089315-444A-46A1-A551-4F0264EF11D2}';
  CLASS_CutLines: TGUID = '{AFDE9B99-603D-4B29-B2E5-3F7399B72619}';
  CLASS_ExternalTessellationObject: TGUID = '{C51785D4-4665-4521-885E-1D0633AE445C}';
  CLASS_ControlPoints: TGUID = '{F8B4A9EA-09FE-41C4-8E66-B2A015CA51C8}';
  CLASS_ControlPoint: TGUID = '{816922D4-1FBA-4672-95AE-E27BEC782E47}';
  CLASS_ConjunctivePoints: TGUID = '{C5DDAF9B-32B7-4552-ADAD-F31D8706ED6B}';
  CLASS_ConjunctivePoint: TGUID = '{4A7A9FC8-85D7-4B62-99BB-7A303F1D6E98}';
  CLASS_PropertyBmpList: TGUID = '{76A04B67-394F-4B63-BC9C-67C52A36F98A}';
  CLASS_ViewPointer: TGUID = '{E437188E-6071-4C50-9E43-FB53E63D9EE9}';
  CLASS_ViewPointers: TGUID = '{A3035980-E806-4458-BF4E-4BD8BC54D592}';
  CLASS_Multiline: TGUID = '{44A427DC-4604-43CA-9AF8-026C494CEC57}';
  CLASS_Multilines: TGUID = '{20023299-3104-4AF3-AC55-6D2B368896BB}';
  CLASS_Contour: TGUID = '{12FABDF2-CAA4-4C8F-A3E6-A56DD90552B5}';
  CLASS_ContourSegment: TGUID = '{33DEDD79-0855-4C92-A1B9-0D45BD3B8DAB}';
  CLASS_ContourLineSegment: TGUID = '{1D09CC46-FBCC-4B09-8D0A-E20B22FAE3EF}';
  CLASS_ContourArc: TGUID = '{31450942-A67C-4459-B7EB-F1B900B100FD}';
  CLASS_Curve2D: TGUID = '{93F02582-585F-4319-90B5-3974A70999D8}';
  CLASS_DrawingContours: TGUID = '{B3BADEEA-2F85-4A72-8546-DFEA96E3E736}';
  CLASS_DrawingContour: TGUID = '{63502BD9-2EC0-4908-8E45-DE433E7B9DB7}';
  CLASS_SplitLines: TGUID = '{452F7CD4-5C9C-48F5-956F-E07E0B1CC30D}';
  CLASS_SplitLine: TGUID = '{606AD1D9-FE0C-44EF-AB97-EE65EF26BC08}';
  CLASS_SurfacePatches: TGUID = '{F77E276E-6F68-4A23-AF68-EEF29603B1AD}';
  CLASS_SurfacePatch: TGUID = '{E61F549B-2E9E-45B6-A647-71730E3EEA49}';
  CLASS_FaceRemovers: TGUID = '{8B491E62-1DE7-4C17-9629-F77DF0E8E45C}';
  CLASS_FaceRemover: TGUID = '{5B433BC2-C5DB-4CF7-8C99-EBCD1421D43E}';
  CLASS_SurfaceSewers: TGUID = '{98702E0A-C12C-49F3-A188-FBC453B4B88C}';
  CLASS_SurfaceSewer: TGUID = '{9541E720-DED1-4A04-A6F0-F11C2512C932}';
  CLASS_NurbsSurfaces: TGUID = '{FDCF85BA-4BB2-4A83-AF0D-73D967485BED}';
  CLASS_NurbsSurface: TGUID = '{D2D5BC88-7991-4245-9968-6222F3993F45}';
  CLASS_PropertyLibExplorer: TGUID = '{F89065E8-D547-452F-8723-24DB2304BC29}';
  CLASS_ExternalGDIObject: TGUID = '{D7A43DA7-65AE-4006-AB72-B579CEE9A99C}';
  CLASS_Circles: TGUID = '{E91C61E1-5C35-4EB3-972E-213CC012426F}';
  CLASS__Circle: TGUID = '{9F1D8D78-C0CD-446D-877F-79330B01B8FA}';
  CLASS_MacroObjects: TGUID = '{2B471C1A-E44F-44AD-99EA-4AC126B80965}';
  CLASS_MacroObject: TGUID = '{A9880F8D-2166-4690-ACA5-4479DBE4251B}';
  CLASS_Ellipses: TGUID = '{F0270B21-879A-4B96-BA43-95B402754FC0}';
  CLASS__Ellipse: TGUID = '{209A2979-6F0C-4D27-B157-CFC74BA53F14}';
  CLASS_EllipseArcs: TGUID = '{A1471F9B-32BE-4E66-BF1C-F83255C7EC6D}';
  CLASS__EllipseArc: TGUID = '{D79ADD45-A3FD-4376-A5E4-BD6E31C193C4}';
  CLASS__Point: TGUID = '{AF3188C2-CD4D-45F6-BCB2-5F44F30200D1}';
  CLASS_Points: TGUID = '{4B8726C5-E743-48A5-9C5F-506F5D57DB7F}';
  CLASS__Line: TGUID = '{BCA8BBB8-CCAA-4865-918F-7D035BD9E0D4}';
  CLASS_Lines: TGUID = '{431C0844-4C3E-4110-8E16-2B952AA0521D}';
  CLASS__Bezier: TGUID = '{BC4A8E55-C5C4-405C-9B78-AA36CA5B1156}';
  CLASS_Beziers: TGUID = '{D744D5EE-E926-45B3-B622-F7B543A2D066}';
  CLASS_Rectangles: TGUID = '{FB692157-2A44-4313-BE9B-5C7AD70DB633}';
  CLASS__Rectangle: TGUID = '{28C7998F-BB9D-4EDC-90EF-D810F40481B7}';
  CLASS_RegularPolygons: TGUID = '{C9204FDB-09B4-443E-9029-FE617CEE9106}';
  CLASS_RegularPolygon: TGUID = '{11D9782E-11E1-471B-82D1-8635B0861339}';
  CLASS_InsertionObjects: TGUID = '{8095A5E3-86CB-4B66-AA45-E71E1E8883A9}';
  CLASS_InsertionView: TGUID = '{A4E92DC4-9804-4381-9B54-8E2030C50E6D}';
  CLASS_InsertionDefinition: TGUID = '{30D92D83-D913-4898-85A4-A6DCEF2007CA}';
  CLASS_PolyLine2D: TGUID = '{FFC3A04A-C9BD-44C2-9485-41F4A655653C}';
  CLASS_PolyLines2D: TGUID = '{6A3B4FB6-FB8D-40D2-B3CA-2DFE4FF725B5}';
  CLASS_Equidistants: TGUID = '{487511E6-E3F4-4F7C-9217-C485B1463A61}';
  CLASS__Equidistant: TGUID = '{5EB10E2C-0D66-4AC2-9619-93B437CBECE7}';
  CLASS__Nurbs: TGUID = '{A71C349D-BAFC-498C-AC18-B372CB2FD4B1}';
  CLASS_Nurbses: TGUID = '{51E9EF87-E12D-48AF-9E0F-35A279878831}';
  CLASS_CentreMarkers: TGUID = '{80178C38-D3BE-4E6B-9D22-AA43D8DA2C46}';
  CLASS_CentreMarker: TGUID = '{F6E745A9-DB3A-40F8-9318-D8A53D04DF16}';
  CLASS_RemoteElement: TGUID = '{79A4CAF1-F75C-47D5-A3AF-65D8B95AD17A}';
  CLASS_RemoteElements: TGUID = '{8B0949ED-637A-49BE-96D4-95CD37A80FCC}';
  CLASS__Attribute: TGUID = '{AEC9CA96-A058-49DF-B566-195C82FE3576}';
  CLASS__ColumnInfo: TGUID = '{A92D056B-1D1F-4C2B-97E9-77A5F837A68A}';
  CLASS__AttributeType: TGUID = '{949BD5DD-A728-4009-8176-222DFEC7B7FC}';
  CLASS_AxisLine: TGUID = '{325C006C-C993-4656-BC1A-DE65D8401527}';
  CLASS_AxisLines: TGUID = '{78F95449-3A99-4B3E-86B5-C7BC9DDDF074}';
  CLASS_Variable7: TGUID = '{DF582F9B-E350-4EF8-A6EA-5D8D32D43CA1}';
  CLASS_InsertionParameters: TGUID = '{863D0E6D-C8E0-4E49-88B7-DAB423CDA1C3}';
  CLASS_DrawingGroup: TGUID = '{C0A36437-0D32-4D41-9C3F-0A70D66A4C03}';
  CLASS_DrawingGroups: TGUID = '{ABBC0387-2E69-4575-BAD1-A97B02B418B2}';
  CLASS__Hatch: TGUID = '{7627E43F-0B5A-410F-9456-81E7C130AC5B}';
  CLASS__Colouring: TGUID = '{E51E0641-4F58-48A1-83D8-F77355DB4E5E}';
  CLASS_Hatches: TGUID = '{1044ADC3-E779-4C48-A4DD-A00BEF9341D6}';
  CLASS_Colourings: TGUID = '{CAA76116-56AD-4466-9951-C16C10D43CE0}';
  CLASS__SpecRough: TGUID = '{11BA32BC-D5A2-474B-BA91-E38EE0A2C567}';
  CLASS_TechnicalDemand: TGUID = '{281276EB-C88D-4F54-9C13-E6DDB8C2530D}';
  CLASS__Raster: TGUID = '{ACAB7ABA-EC2F-4E2B-A742-19BB5BC4441A}';
  CLASS_Rasters: TGUID = '{F90677D1-9ED2-4BDF-8C68-6B241B2A09F2}';
  CLASS_OleDrawingObject: TGUID = '{C5D9DA68-4574-40D5-B92A-838C235F1903}';
  CLASS_OleDrawingObjects: TGUID = '{41E89E17-2FB8-4E08-A01A-CF9BB524A6A2}';
  CLASS_SelectionManager: TGUID = '{45615DBB-7842-436C-9B84-063A13C061E8}';
  CLASS_ChooseManager: TGUID = '{495C89BD-48C4-40B3-9829-4E982F191BA2}';
  CLASS_SurfacesIntersectionCurve: TGUID = '{CE94C01B-ED23-43FC-98BB-D7BD85EE0D47}';
  CLASS_SurfacesIntersectionCurves: TGUID = '{BDD167C1-8439-412E-8A41-4A01576CBC79}';
  IID_IModelCurve3D: TGUID = '{EB4AB3A9-8E01-4952-9119-F8D09D9572D5}';
  CLASS__Stamp: TGUID = '{79CB82D9-6EA1-49D2-8479-C7005D87EC77}';
  CLASS_WaveLine: TGUID = '{1D709F94-C02D-4DAD-8E74-B9E7434A8E62}';
  CLASS_WaveLines: TGUID = '{A5B25423-BA42-47B3-B0BD-AF8CC911B767}';
  CLASS_BrokenLine: TGUID = '{1C337EDB-F786-4D56-8BD2-06D927176C32}';
  CLASS_BrokenLines: TGUID = '{31314843-3608-4B45-8F0A-DDBC308226C6}';
  IID_IPropertyStyleList: TGUID = '{B2431C46-9A35-494B-A958-D9098F82C3FA}';
  CLASS_PropertyStyleList: TGUID = '{C2792BEE-4F86-4610-908E-8E4B31B603FC}';
  CLASS__CopyObjectParam: TGUID = '{6DE8A8F7-28C6-42C7-A579-C24BDFA6B73F}';
  CLASS_CurveCopyObjectParam: TGUID = '{07BD4468-D478-447C-8F20-1C6E2ABBD9C2}';
  CLASS_CircleCopyObjectParam: TGUID = '{6F7F48FC-1DA4-4689-9AE3-69804B842D1B}';
  IID_ICircularCopyObjectParam: TGUID = '{A5B8E337-EE84-4EEC-8235-A812FDD6C2DE}';
  CLASS_CircularCopyObjectParam: TGUID = '{FECBF8C1-D8B4-437F-8AA3-DC6362C2E51E}';
  IID_IMeshCopyObjectParam: TGUID = '{592AB214-A8CF-462E-ACD5-528839113338}';
  CLASS_MeshCopyObjectParam: TGUID = '{FF54BE1B-3B35-4B01-985D-8D696086F7E7}';
  CLASS_PrintJob: TGUID = '{87DAB0E6-B749-47FC-8E02-76DAC0439C81}';
  CLASS_PrintJob_Sheet: TGUID = '{F035E79B-1F65-42C6-AB49-498C65CC2E1F}';
  CLASS__Property: TGUID = '{9699D02A-6FF3-4C25-8974-5EB527024315}';
  CLASS_LibArraySettings: TGUID = '{19144A91-0D9F-4906-AFD0-BEFB5625662D}';
  CLASS_ReportProcess: TGUID = '{2A2F00CE-536E-462D-B554-5809CDE31095}';
  CLASS_Equidistants3D: TGUID = '{D5ABFF52-A8A7-45CB-BDCD-103FDFEF3E3E}';
  CLASS_Equidistant3D: TGUID = '{948EB787-026E-4990-8A92-B6B3F25D4D7C}';
type

// *********************************************************************//
// Forward declaration of types defined in TypeLibrary                    
// *********************************************************************//
  IKompasAPIObject = interface;
  IKompasAPIObjectDisp = dispinterface;
  IApplication = interface;
  IApplicationDisp = dispinterface;
  IKompasCollection = interface;
  IKompasCollectionDisp = dispinterface;
  IDocuments = interface;
  IDocumentsDisp = dispinterface;
  IKompasDocument = interface;
  IKompasDocumentDisp = dispinterface;
  IDocumentFrames = interface;
  IDocumentFramesDisp = dispinterface;
  IDocumentFrame = interface;
  IDocumentFrameDisp = dispinterface;
  IDocumentSettings = interface;
  IDocumentSettingsDisp = dispinterface;
  ISpecificationDescriptions = interface;
  ISpecificationDescriptionsDisp = dispinterface;
  ISpecificationDescription = interface;
  ISpecificationDescriptionDisp = dispinterface;
  ISpecificationStyle = interface;
  ISpecificationStyleDisp = dispinterface;
  ISpecificationTuning = interface;
  ISpecificationTuningDisp = dispinterface;
  ITextStyle = interface;
  ITextStyleDisp = dispinterface;
  ITextFont = interface;
  ITextFontDisp = dispinterface;
  ITabulators = interface;
  ITabulatorsDisp = dispinterface;
  ITabulator = interface;
  ITabulatorDisp = dispinterface;
  ISpecificationTuningSections = interface;
  ISpecificationTuningSectionsDisp = dispinterface;
  ISpecificationTuningSection = interface;
  ISpecificationTuningSectionDisp = dispinterface;
  ISpecificationSubsections = interface;
  ISpecificationSubsectionsDisp = dispinterface;
  ISpecificationSubsection = interface;
  ISpecificationSubsectionDisp = dispinterface;
  IAdditionalBlockTunings = interface;
  IAdditionalBlockTuningsDisp = dispinterface;
  IAdditionalBlockTuning = interface;
  IAdditionalBlockTuningDisp = dispinterface;
  IAdditionalBlockSectionTunings = interface;
  IAdditionalBlockSectionTuningsDisp = dispinterface;
  IAdditionalBlockSectionTuning = interface;
  IAdditionalBlockSectionTuningDisp = dispinterface;
  ISheetFormat = interface;
  ISheetFormatDisp = dispinterface;
  ISpecificationColumnStyles = interface;
  ISpecificationColumnStylesDisp = dispinterface;
  ISpecificationColumnStyle = interface;
  ISpecificationColumnStyleDisp = dispinterface;
  ISpecificationSectionStyles = interface;
  ISpecificationSectionStylesDisp = dispinterface;
  ISpecificationSectionStyle = interface;
  ISpecificationSectionStyleDisp = dispinterface;
  IAdditionalBlockStyles = interface;
  IAdditionalBlockStylesDisp = dispinterface;
  IAdditionalBlockStyle = interface;
  IAdditionalBlockStyleDisp = dispinterface;
  ISpecificationBaseObjects = interface;
  ISpecificationBaseObjectsDisp = dispinterface;
  ISpecificationObject = interface;
  ISpecificationObjectDisp = dispinterface;
  ISpecificationBaseObject = interface;
  ISpecificationBaseObjectDisp = dispinterface;
  ISpecificationColumns = interface;
  ISpecificationColumnsDisp = dispinterface;
  ISpecificationColumn = interface;
  ISpecificationColumnDisp = dispinterface;
  ISpecificationColumnItems = interface;
  ISpecificationColumnItemsDisp = dispinterface;
  ISpecificationColumnItem = interface;
  ISpecificationColumnItemDisp = dispinterface;
  IText = interface;
  ITextDisp = dispinterface;
  ITextLine = interface;
  ITextLineDisp = dispinterface;
  ITextItem = interface;
  ITextItemDisp = dispinterface;
  IAttachedDocuments = interface;
  IAttachedDocumentsDisp = dispinterface;
  IAttachedDocument = interface;
  IAttachedDocumentDisp = dispinterface;
  ISpecificationCommentObjects = interface;
  ISpecificationCommentObjectsDisp = dispinterface;
  ISpecificationCommentObject = interface;
  ISpecificationCommentObjectDisp = dispinterface;
  ILayoutSheets = interface;
  ILayoutSheetsDisp = dispinterface;
  ILayoutSheet = interface;
  ILayoutSheetDisp = dispinterface;
  IStamp = interface;
  IStampDisp = dispinterface;
  IUserDataStoragesMng = interface;
  IUserDataStoragesMngDisp = dispinterface;
  IUserDataStorages = interface;
  IUserDataStoragesDisp = dispinterface;
  IUserDataStorage = interface;
  IUserDataStorageDisp = dispinterface;
  IProcessParam = interface;
  IProcessParamDisp = dispinterface;
  IPropertyTabs = interface;
  IPropertyTabsDisp = dispinterface;
  IPropertyTab = interface;
  IPropertyTabDisp = dispinterface;
  IPropertyControls = interface;
  IPropertyControlsDisp = dispinterface;
  IPropertyControl = interface;
  IPropertyControlDisp = dispinterface;
  IPropertyManager = interface;
  IPropertyManagerDisp = dispinterface;
  ILibraryManager = interface;
  ILibraryManagerDisp = dispinterface;
  IProceduresLibraries = interface;
  IProceduresLibrariesDisp = dispinterface;
  ILibrary = interface;
  ILibraryDisp = dispinterface;
  IProceduresLibrary = interface;
  IProceduresLibraryDisp = dispinterface;
  IProcedures = interface;
  IProceduresDisp = dispinterface;
  IProcedure = interface;
  IProcedureDisp = dispinterface;
  IInsertsLibraries = interface;
  IInsertsLibrariesDisp = dispinterface;
  IInsertsLibrary = interface;
  IInsertsLibraryDisp = dispinterface;
  IInserts = interface;
  IInsertsDisp = dispinterface;
  IInsert = interface;
  IInsertDisp = dispinterface;
  IKompasError = interface;
  IKompasErrorDisp = dispinterface;
  IConverter = interface;
  IConverterDisp = dispinterface;
  ICheckSum = interface;
  ICheckSumDisp = dispinterface;
  IProgressBarIndicator = interface;
  IProgressBarIndicatorDisp = dispinterface;
  ISystemSettings = interface;
  ISystemSettingsDisp = dispinterface;
  ILibArraySettings = interface;
  ILibArraySettingsDisp = dispinterface;
  IMath2D = interface;
  IMath2DDisp = dispinterface;
  ICurve2D = interface;
  ICurve2DDisp = dispinterface;
  IPrintJob = interface;
  IPrintJobDisp = dispinterface;
  IPrintJob_Sheet = interface;
  IPrintJob_SheetDisp = dispinterface;
  IKompasDocument2D = interface;
  IKompasDocument2DDisp = dispinterface;
  IViewsAndLayersManager = interface;
  IViewsAndLayersManagerDisp = dispinterface;
  IDrawingObjects = interface;
  IDrawingObjectsDisp = dispinterface;
  IViews = interface;
  IViewsDisp = dispinterface;
  IDrawingObject = interface;
  IDrawingObjectDisp = dispinterface;
  IView = interface;
  IViewDisp = dispinterface;
  ILayers = interface;
  ILayersDisp = dispinterface;
  ILayer = interface;
  ILayerDisp = dispinterface;
  IVariable7 = interface;
  IVariable7Disp = dispinterface;
  ILayerGroups = interface;
  ILayerGroupsDisp = dispinterface;
  ILayerGroup = interface;
  ILayerGroupDisp = dispinterface;
  ILayerFilterConditions = interface;
  ILayerFilterConditionsDisp = dispinterface;
  ILayerFilterCondition = interface;
  ILayerFilterConditionDisp = dispinterface;
  IKompasDocument3D = interface;
  IKompasDocument3DDisp = dispinterface;
  IModelObject = interface;
  IModelObjectDisp = dispinterface;
  IPart7 = interface;
  IPart7Disp = dispinterface;
  IFeature7 = interface;
  IFeature7Disp = dispinterface;
  IModelObjects = interface;
  IModelObjectsDisp = dispinterface;
  IParts7 = interface;
  IParts7Disp = dispinterface;
  IVariableTable = interface;
  IVariableTableDisp = dispinterface;
  IPoint3D = interface;
  IPoint3DDisp = dispinterface;
  ILocalCoordinateSystem = interface;
  ILocalCoordinateSystemDisp = dispinterface;
  ISelectionManager = interface;
  ISelectionManagerDisp = dispinterface;
  IChooseManager = interface;
  IChooseManagerDisp = dispinterface;
  IAttribute = interface;
  IAttributeDisp = dispinterface;
  IAttributeType = interface;
  IAttributeTypeDisp = dispinterface;
  IColumnInfo = interface;
  IColumnInfoDisp = dispinterface;
  IDrawingObject1 = interface;
  IDrawingObject1Disp = dispinterface;
  IParametriticConstraint = interface;
  IParametriticConstraintDisp = dispinterface;
  IKompasDocument1 = interface;
  IKompasDocument1Disp = dispinterface;
  IKompasDocument2D1 = interface;
  IKompasDocument2D1Disp = dispinterface;
  IMacroObject = interface;
  IMacroObjectDisp = dispinterface;
  IDrawingGroups = interface;
  IDrawingGroupsDisp = dispinterface;
  IDrawingGroup = interface;
  IDrawingGroupDisp = dispinterface;
  ICopyObjectParam = interface;
  ICopyObjectParamDisp = dispinterface;
  IDrawingDocument = interface;
  IDrawingDocumentDisp = dispinterface;
  ISpecRough = interface;
  ISpecRoughDisp = dispinterface;
  ITechnicalDemand = interface;
  ITechnicalDemandDisp = dispinterface;
  IFragmentDocument = interface;
  IFragmentDocumentDisp = dispinterface;
  ISpecificationDocument = interface;
  ISpecificationDocumentDisp = dispinterface;
  ITextDocument = interface;
  ITextDocumentDisp = dispinterface;
  IPartDocument = interface;
  IPartDocumentDisp = dispinterface;
  IAssemblyDocument = interface;
  IAssemblyDocumentDisp = dispinterface;
  IDimensionText = interface;
  IDimensionTextDisp = dispinterface;
  IDimensionParams = interface;
  IDimensionParamsDisp = dispinterface;
  ILoadCombination = interface;
  ILoadCombinationDisp = dispinterface;
  IFrameTreesManager = interface;
  IFrameTreesManagerDisp = dispinterface;
  IAttrTypeMng = interface;
  IAttrTypeMngDisp = dispinterface;
  IPrintJob_OutputParameters = interface;
  IPrintJob_OutputParametersDisp = dispinterface;
  IProperty = interface;
  IPropertyDisp = dispinterface;
  IPropertyMng = interface;
  IPropertyMngDisp = dispinterface;
  IPropertyKeeper = interface;
  IPropertyKeeperDisp = dispinterface;
  IReportProcess = interface;
  IReportProcessDisp = dispinterface;
  IReportFilter = interface;
  IReportFilterDisp = dispinterface;
  IPropertyControl1 = interface;
  IPropertyControl1Disp = dispinterface;
  IPropertyEdit = interface;
  IPropertyEditDisp = dispinterface;
  IPropertySeparator = interface;
  IPropertySeparatorDisp = dispinterface;
  IPropertyList = interface;
  IPropertyListDisp = dispinterface;
  IPropertyCheckBox = interface;
  IPropertyCheckBoxDisp = dispinterface;
  IPropertyMultiButton = interface;
  IPropertyMultiButtonDisp = dispinterface;
  IPropertySlideBox = interface;
  IPropertySlideBoxDisp = dispinterface;
  IPropertyUserControl = interface;
  IPropertyUserControlDisp = dispinterface;
  IPropertyGrid = interface;
  IPropertyGridDisp = dispinterface;
  IPropertyTextButton = interface;
  IPropertyTextButtonDisp = dispinterface;
  IPropertySpinEdit = interface;
  IPropertySpinEditDisp = dispinterface;
  IPropertyFileName = interface;
  IPropertyFileNameDisp = dispinterface;
  IPropertyColor = interface;
  IPropertyColorDisp = dispinterface;
  IPropertyEditList = interface;
  IPropertyEditListDisp = dispinterface;
  IPropertyToolBar = interface;
  IPropertyToolBarDisp = dispinterface;
  IPropertyBmpList = interface;
  IPropertyBmpListDisp = dispinterface;
  IProcessInfoWindow = interface;
  IProcessInfoWindowDisp = dispinterface;
  IPropertyLibExplorer = interface;
  IPropertyLibExplorerDisp = dispinterface;
  IAssociationView = interface;
  IAssociationViewDisp = dispinterface;
  IViewDesignation = interface;
  IViewDesignationDisp = dispinterface;
  IAssociationViewElements = interface;
  IAssociationViewElementsDisp = dispinterface;
  IBreakViewParam = interface;
  IBreakViewParamDisp = dispinterface;
  ICutViewParam = interface;
  ICutViewParamDisp = dispinterface;
  IHatchParam = interface;
  IHatchParamDisp = dispinterface;
  IDocument2DSettings = interface;
  IDocument2DSettingsDisp = dispinterface;
  IDrawingDocumentSettings = interface;
  IDrawingDocumentSettingsDisp = dispinterface;
  IFragmentDocumentSettings = interface;
  IFragmentDocumentSettingsDisp = dispinterface;
  ILibItemSettings = interface;
  ILibItemSettingsDisp = dispinterface;
  IInsertionParameters = interface;
  IInsertionParametersDisp = dispinterface;
  IInsertionDefinition = interface;
  IInsertionDefinitionDisp = dispinterface;
  ITableCell = interface;
  ITableCellDisp = dispinterface;
  ITable = interface;
  ITableDisp = dispinterface;
  ITableRange = interface;
  ITableRangeDisp = dispinterface;
  ICellFormat = interface;
  ICellFormatDisp = dispinterface;
  ICellBoundaries = interface;
  ICellBoundariesDisp = dispinterface;
  ksPropertyManagerNotify = dispinterface;
  ksPropertyUserControlNotify = dispinterface;
  ksDocumentFrameNotify = dispinterface;
  IPaintObject = interface;
  IPaintObjectDisp = dispinterface;
  ksGLObject = dispinterface;
  IGabaritObject = interface;
  IGabaritObjectDisp = dispinterface;
  ksDrawingObjectNotify = dispinterface;
  ksViewsAndLayersManagerNotify = dispinterface;
  ksLibraryManagerNotify = dispinterface;
  ksSpecificationDescriptionNotify = dispinterface;
  ksSpecificationObjectNotify = dispinterface;
  ksLayoutSheetsNotify = dispinterface;
  ksModelObjectNotify = dispinterface;
  ksDocument3DNotify7 = dispinterface;
  IModelObjectNotifyResult = interface;
  IModelObjectNotifyResultDisp = dispinterface;
  IKompasDocument3DNotifyResult = interface;
  IKompasDocument3DNotifyResultDisp = dispinterface;
  IModelContainer = interface;
  IModelContainerDisp = dispinterface;
  ISketchs = interface;
  ISketchsDisp = dispinterface;
  ISketch = interface;
  ISketchDisp = dispinterface;
  IExtrusions = interface;
  IExtrusionsDisp = dispinterface;
  IExtrusion = interface;
  IExtrusionDisp = dispinterface;
  IPoints3D = interface;
  IPoints3DDisp = dispinterface;
  IMassInertiaParam7 = interface;
  IMassInertiaParam7Disp = dispinterface;
  IThinParameters = interface;
  IThinParametersDisp = dispinterface;
  ICutExtrusion = interface;
  ICutExtrusionDisp = dispinterface;
  IChooseBodies7 = interface;
  IChooseBodies7Disp = dispinterface;
  IBody7 = interface;
  IBody7Disp = dispinterface;
  ISheetMetalBodies = interface;
  ISheetMetalBodiesDisp = dispinterface;
  ISheetMetalBody = interface;
  ISheetMetalBodyDisp = dispinterface;
  ISheetMetalContainer = interface;
  ISheetMetalContainerDisp = dispinterface;
  ISheetMetalBends = interface;
  ISheetMetalBendsDisp = dispinterface;
  ISheetMetalBend = interface;
  ISheetMetalBendDisp = dispinterface;
  ISheetMetalLineBends = interface;
  ISheetMetalLineBendsDisp = dispinterface;
  ISheetMetalLineBend = interface;
  ISheetMetalLineBendDisp = dispinterface;
  ISheetMetalHoles = interface;
  ISheetMetalHolesDisp = dispinterface;
  ISheetMetalHole = interface;
  ISheetMetalHoleDisp = dispinterface;
  ISheetMetalCuts = interface;
  ISheetMetalCutsDisp = dispinterface;
  ISheetMetalCut = interface;
  ISheetMetalCutDisp = dispinterface;
  IPoint3DParamDisplace = interface;
  IPoint3DParamDisplaceDisp = dispinterface;
  IPoint3DParamIntersect = interface;
  IPoint3DParamIntersectDisp = dispinterface;
  IPoint3DParamCenter = interface;
  IPoint3DParamCenterDisp = dispinterface;
  IPoint3DParamCurve = interface;
  IPoint3DParamCurveDisp = dispinterface;
  IPoint3DParamSurface = interface;
  IPoint3DParamSurfaceDisp = dispinterface;
  IPoint3DParamProjection = interface;
  IPoint3DParamProjectionDisp = dispinterface;
  ISourcePart7Params = interface;
  ISourcePart7ParamsDisp = dispinterface;
  ISymbols3DContainer = interface;
  ISymbols3DContainerDisp = dispinterface;
  ILineDimensions3D = interface;
  ILineDimensions3DDisp = dispinterface;
  IBaseLineDimension3D = interface;
  IBaseLineDimension3DDisp = dispinterface;
  IRadialDimensions3D = interface;
  IRadialDimensions3DDisp = dispinterface;
  IRadialDimension3D = interface;
  IRadialDimension3DDisp = dispinterface;
  IDiametralDimensions3D = interface;
  IDiametralDimensions3DDisp = dispinterface;
  IDiametralDimension3D = interface;
  IDiametralDimension3DDisp = dispinterface;
  IAngleDimensions3D = interface;
  IAngleDimensions3DDisp = dispinterface;
  IAngleDimension3D = interface;
  IAngleDimension3DDisp = dispinterface;
  ILeaders3D = interface;
  ILeaders3DDisp = dispinterface;
  IBaseLeader3D = interface;
  IBaseLeader3DDisp = dispinterface;
  IRoughs3D = interface;
  IRoughs3DDisp = dispinterface;
  IRough3D = interface;
  IRough3DDisp = dispinterface;
  IBases3D = interface;
  IBases3DDisp = dispinterface;
  IBase3D = interface;
  IBase3DDisp = dispinterface;
  ITolerances3D = interface;
  ITolerances3DDisp = dispinterface;
  ITolerance3D = interface;
  ITolerance3DDisp = dispinterface;
  ILineDimension3D = interface;
  ILineDimension3DDisp = dispinterface;
  ICurveVertexParam = interface;
  ICurveVertexParamDisp = dispinterface;
  ISplines3D = interface;
  ISplines3DDisp = dispinterface;
  ISpline3D = interface;
  ISpline3DDisp = dispinterface;
  ILocalCoordinateSystems = interface;
  ILocalCoordinateSystemsDisp = dispinterface;
  IAuxiliaryGeomContainer = interface;
  IAuxiliaryGeomContainerDisp = dispinterface;
  IPolyLines = interface;
  IPolyLinesDisp = dispinterface;
  IPolyLine = interface;
  IPolyLineDisp = dispinterface;
  IControlPoints = interface;
  IControlPointsDisp = dispinterface;
  IControlPoint = interface;
  IControlPointDisp = dispinterface;
  IConjunctivePoints = interface;
  IConjunctivePointsDisp = dispinterface;
  IConjunctivePoint = interface;
  IConjunctivePointDisp = dispinterface;
  ISplitLines = interface;
  ISplitLinesDisp = dispinterface;
  ISplitLine = interface;
  ISplitLineDisp = dispinterface;
  ISurfacesIntersectionCurves = interface;
  ISurfacesIntersectionCurvesDisp = dispinterface;
  ISurfacesIntersectionCurve = interface;
  ISurfacesIntersectionCurveDisp = dispinterface;
  IEquidistants3D = interface;
  IEquidistants3DDisp = dispinterface;
  IEquidistant3D = interface;
  IEquidistant3DDisp = dispinterface;
  ILocalCSAxesDirectionParam = interface;
  ILocalCSAxesDirectionParamDisp = dispinterface;
  ILocalCSEulerParam = interface;
  ILocalCSEulerParamDisp = dispinterface;
  IRoughParams = interface;
  IRoughParamsDisp = dispinterface;
  IBranchs3D = interface;
  IBranchs3DDisp = dispinterface;
  ILocalCSOrientByObjectParam = interface;
  ILocalCSOrientByObjectParamDisp = dispinterface;
  ILocalCSObject = interface;
  ILocalCSObjectDisp = dispinterface;
  ISurfaceContainer = interface;
  ISurfaceContainerDisp = dispinterface;
  ISurfacePatches = interface;
  ISurfacePatchesDisp = dispinterface;
  ISurfacePatch = interface;
  ISurfacePatchDisp = dispinterface;
  IFaceRemovers = interface;
  IFaceRemoversDisp = dispinterface;
  IFaceRemover = interface;
  IFaceRemoverDisp = dispinterface;
  ISurfaceSewers = interface;
  ISurfaceSewersDisp = dispinterface;
  ISurfaceSewer = interface;
  ISurfaceSewerDisp = dispinterface;
  INurbsSurfaces = interface;
  INurbsSurfacesDisp = dispinterface;
  INurbsSurface = interface;
  INurbsSurfaceDisp = dispinterface;
  IColorParam7 = interface;
  IColorParam7Disp = dispinterface;
  IDrawingText = interface;
  IDrawingTextDisp = dispinterface;
  IDrawingTexts = interface;
  IDrawingTextsDisp = dispinterface;
  IDrawingContainer = interface;
  IDrawingContainerDisp = dispinterface;
  ILineSegments = interface;
  ILineSegmentsDisp = dispinterface;
  ILineSegment = interface;
  ILineSegmentDisp = dispinterface;
  IArcs = interface;
  IArcsDisp = dispinterface;
  IArc = interface;
  IArcDisp = dispinterface;
  IMultilines = interface;
  IMultilinesDisp = dispinterface;
  IMultiline = interface;
  IMultilineDisp = dispinterface;
  IContour = interface;
  IContourDisp = dispinterface;
  IDrawingContours = interface;
  IDrawingContoursDisp = dispinterface;
  IDrawingContour = interface;
  IDrawingContourDisp = dispinterface;
  ICircles = interface;
  ICirclesDisp = dispinterface;
  ICircle = interface;
  ICircleDisp = dispinterface;
  IPoints = interface;
  IPointsDisp = dispinterface;
  IPoint = interface;
  IPointDisp = dispinterface;
  IBeziers = interface;
  IBeziersDisp = dispinterface;
  IBezier = interface;
  IBezierDisp = dispinterface;
  IMacroObjects = interface;
  IMacroObjectsDisp = dispinterface;
  ILines = interface;
  ILinesDisp = dispinterface;
  ILine = interface;
  ILineDisp = dispinterface;
  IPolyLines2D = interface;
  IPolyLines2DDisp = dispinterface;
  IPolyLine2D = interface;
  IPolyLine2DDisp = dispinterface;
  INurbses = interface;
  INurbsesDisp = dispinterface;
  INurbs = interface;
  INurbsDisp = dispinterface;
  IRasters = interface;
  IRastersDisp = dispinterface;
  IRaster = interface;
  IRasterDisp = dispinterface;
  IOleDrawingObjects = interface;
  IOleDrawingObjectsDisp = dispinterface;
  IOleDrawingObject = interface;
  IOleDrawingObjectDisp = dispinterface;
  IEllipses = interface;
  IEllipsesDisp = dispinterface;
  IEllipse = interface;
  IEllipseDisp = dispinterface;
  IEllipseArcs = interface;
  IEllipseArcsDisp = dispinterface;
  IEllipseArc = interface;
  IEllipseArcDisp = dispinterface;
  IRectangles = interface;
  IRectanglesDisp = dispinterface;
  IRectangle = interface;
  IRectangleDisp = dispinterface;
  IRegularPolygons = interface;
  IRegularPolygonsDisp = dispinterface;
  IRegularPolygon = interface;
  IRegularPolygonDisp = dispinterface;
  IEquidistants = interface;
  IEquidistantsDisp = dispinterface;
  IEquidistant = interface;
  IEquidistantDisp = dispinterface;
  IInsertionObjects = interface;
  IInsertionObjectsDisp = dispinterface;
  IInsertionObject = interface;
  IInsertionObjectDisp = dispinterface;
  IHatches = interface;
  IHatchesDisp = dispinterface;
  IHatch = interface;
  IHatchDisp = dispinterface;
  IColourings = interface;
  IColouringsDisp = dispinterface;
  IColouring = interface;
  IColouringDisp = dispinterface;
  IMark = interface;
  IMarkDisp = dispinterface;
  IMarks = interface;
  IMarksDisp = dispinterface;
  IMarkInsideForm = interface;
  IMarkInsideFormDisp = dispinterface;
  IMarkOnLine = interface;
  IMarkOnLineDisp = dispinterface;
  IMarkOnLeader = interface;
  IMarkOnLeaderDisp = dispinterface;
  IBuildingAxis = interface;
  IBuildingAxisDisp = dispinterface;
  IMarkNode = interface;
  IMarkNodeDisp = dispinterface;
  IMarkNodes = interface;
  IMarkNodesDisp = dispinterface;
  IBuildingAxes = interface;
  IBuildingAxesDisp = dispinterface;
  IStraightAxis = interface;
  IStraightAxisDisp = dispinterface;
  IAxisJut = interface;
  IAxisJutDisp = dispinterface;
  IArcAxis = interface;
  IArcAxisDisp = dispinterface;
  ICircleAxis = interface;
  ICircleAxisDisp = dispinterface;
  ICutUnitMarking = interface;
  ICutUnitMarkingDisp = dispinterface;
  ICutUnitMarkings = interface;
  ICutUnitMarkingsDisp = dispinterface;
  IUnitMarking = interface;
  IUnitMarkingDisp = dispinterface;
  IUnitMarkings = interface;
  IUnitMarkingsDisp = dispinterface;
  IBuildingContainer = interface;
  IBuildingContainerDisp = dispinterface;
  IMultiTextLeaders = interface;
  IMultiTextLeadersDisp = dispinterface;
  IMultiTextLeader = interface;
  IMultiTextLeaderDisp = dispinterface;
  IUnitNumbers = interface;
  IUnitNumbersDisp = dispinterface;
  IUnitNumber = interface;
  IUnitNumberDisp = dispinterface;
  IBraces = interface;
  IBracesDisp = dispinterface;
  IBrace = interface;
  IBraceDisp = dispinterface;
  ICutLines = interface;
  ICutLinesDisp = dispinterface;
  ICutLine = interface;
  ICutLineDisp = dispinterface;
  ISymbols2DContainer = interface;
  ISymbols2DContainerDisp = dispinterface;
  ILineDimensions = interface;
  ILineDimensionsDisp = dispinterface;
  ILineDimension = interface;
  ILineDimensionDisp = dispinterface;
  IRadialDimensions = interface;
  IRadialDimensionsDisp = dispinterface;
  IRadialDimension = interface;
  IRadialDimensionDisp = dispinterface;
  IDiametralDimensions = interface;
  IDiametralDimensionsDisp = dispinterface;
  IDiametralDimension = interface;
  IDiametralDimensionDisp = dispinterface;
  IAngleDimensions = interface;
  IAngleDimensionsDisp = dispinterface;
  IAngleDimension = interface;
  IAngleDimensionDisp = dispinterface;
  IBreakLineDimensions = interface;
  IBreakLineDimensionsDisp = dispinterface;
  IBreakLineDimension = interface;
  IBreakLineDimensionDisp = dispinterface;
  IHeightDimensions = interface;
  IHeightDimensionsDisp = dispinterface;
  IHeightDimension = interface;
  IHeightDimensionDisp = dispinterface;
  IArcDimensions = interface;
  IArcDimensionsDisp = dispinterface;
  IArcDimension = interface;
  IArcDimensionDisp = dispinterface;
  IBreakRadialDimensions = interface;
  IBreakRadialDimensionsDisp = dispinterface;
  IBreakRadialDimension = interface;
  IBreakRadialDimensionDisp = dispinterface;
  IRoughs = interface;
  IRoughsDisp = dispinterface;
  IRough = interface;
  IRoughDisp = dispinterface;
  ILeaders = interface;
  ILeadersDisp = dispinterface;
  IBaseLeader = interface;
  IBaseLeaderDisp = dispinterface;
  IBases = interface;
  IBasesDisp = dispinterface;
  IBase = interface;
  IBaseDisp = dispinterface;
  ITolerances = interface;
  ITolerancesDisp = dispinterface;
  ITolerance = interface;
  IToleranceDisp = dispinterface;
  IDrawingTables = interface;
  IDrawingTablesDisp = dispinterface;
  IDrawingTable = interface;
  IDrawingTableDisp = dispinterface;
  IViewPointers = interface;
  IViewPointersDisp = dispinterface;
  IViewPointer = interface;
  IViewPointerDisp = dispinterface;
  ICentreMarkers = interface;
  ICentreMarkersDisp = dispinterface;
  ICentreMarker = interface;
  ICentreMarkerDisp = dispinterface;
  IRemoteElements = interface;
  IRemoteElementsDisp = dispinterface;
  IRemoteElement = interface;
  IRemoteElementDisp = dispinterface;
  IAxisLines = interface;
  IAxisLinesDisp = dispinterface;
  IAxisLine = interface;
  IAxisLineDisp = dispinterface;
  IWaveLines = interface;
  IWaveLinesDisp = dispinterface;
  IWaveLine = interface;
  IWaveLineDisp = dispinterface;
  IBrokenLines = interface;
  IBrokenLinesDisp = dispinterface;
  IBrokenLine = interface;
  IBrokenLineDisp = dispinterface;
  IBreakAngleDimension = interface;
  IBreakAngleDimensionDisp = dispinterface;
  IBranchs = interface;
  IBranchsDisp = dispinterface;
  ILeader = interface;
  ILeaderDisp = dispinterface;
  IMarkLeader = interface;
  IMarkLeaderDisp = dispinterface;
  IPositionLeader = interface;
  IPositionLeaderDisp = dispinterface;
  IChangeLeader = interface;
  IChangeLeaderDisp = dispinterface;
  IBrandLeader = interface;
  IBrandLeaderDisp = dispinterface;
  IToleranceParam = interface;
  IToleranceParamDisp = dispinterface;
  IContourSegment = interface;
  IContourSegmentDisp = dispinterface;
  IContourLineSegment = interface;
  IContourLineSegmentDisp = dispinterface;
  IContourArc = interface;
  IContourArcDisp = dispinterface;
  IInsertionFragment = interface;
  IInsertionFragmentDisp = dispinterface;
  IInsertionView = interface;
  IInsertionViewDisp = dispinterface;
  IInsertionsManager = interface;
  IInsertionsManagerDisp = dispinterface;
  IAxisLineParam = interface;
  IAxisLineParamDisp = dispinterface;
  IBoundariesObject = interface;
  IBoundariesObjectDisp = dispinterface;
  IAnnotativeObject = interface;
  IAnnotativeObjectDisp = dispinterface;
  IAnnotativeContainer = interface;
  IAnnotativeContainerDisp = dispinterface;
  ICurveCopyObjectParam = interface;
  ICurveCopyObjectParamDisp = dispinterface;
  ICircleCopyObjectParam = interface;
  ICircleCopyObjectParamDisp = dispinterface;
  IExternalTessellationObject = interface;
  IExternalTessellationObjectDisp = dispinterface;
  IExternalTessellationManager = interface;
  IExternalTessellationManagerDisp = dispinterface;
  IExternalGDIObject = interface;
  IExternalGDIObjectDisp = dispinterface;
  IModelCurve3D = interface;
  IModelCurve3DDisp = dispinterface;
  IPropertyStyleList = interface;
  IPropertyStyleListDisp = dispinterface;
  ICircularCopyObjectParam = interface;
  ICircularCopyObjectParamDisp = dispinterface;
  IMeshCopyObjectParam = interface;
  IMeshCopyObjectParamDisp = dispinterface;

// *********************************************************************//
// Declaration of CoClasses defined in Type Library                       
// (NOTE: Here we map each CoClass to its Default Interface)              
// *********************************************************************//
  KompasDocument = IKompasDocument;
  _Application = IApplication;
  Documents = IDocuments;
  DocumentFrame = IDocumentFrame;
  DocumentFrames = IDocumentFrames;
  ProcessParam = IProcessParam;
  PropertyControls = IPropertyControls;
  PropertyTab = IPropertyTab;
  PropertyTabs = IPropertyTabs;
  PropertyEdit = IPropertyEdit;
  PropertySeparator = IPropertySeparator;
  PropertyList = IPropertyList;
  PropertyCheckBox = IPropertyCheckBox;
  PropertyMultiButton = IPropertyMultiButton;
  PropertySlideBox = IPropertySlideBox;
  PropertyUserControl = IPropertyUserControl;
  PropertyGrid = IPropertyGrid;
  PropertyManager = IPropertyManager;
  KompasDocument3D = IKompasDocument3D;
  DrawingDocument = IDrawingDocument;
  FragmentDocument = IFragmentDocument;
  SpecificationDocument = ISpecificationDocument;
  TextDocument = ITextDocument;
  PartDocument = IPartDocument;
  AssemblyDocument = IAssemblyDocument;
  PropertyTextButton = IPropertyTextButton;
  PropertySpinEdit = IPropertySpinEdit;
  ViewsAndLayersManager = IViewsAndLayersManager;
  DrawingObject = IDrawingObject;
  DrawingObjects = IDrawingObjects;
  Views = IViews;
  View = IView;
  AssociationView = IAssociationView;
  LayerGroups = ILayerGroups;
  LayerGroup = ILayerGroup;
  Layers = ILayers;
  Layer = ILayer;
  LayerFilterCondition = ILayerFilterCondition;
  LayerFilterConditions = ILayerFilterConditions;
  DocumentSettings = IDocumentSettings;
  Document2DSettings = IDocument2DSettings;
  LibraryManager = ILibraryManager;
  ProceduresLibrary = IProceduresLibrary;
  Procedures = IProcedures;
  Procedure_ = IProcedure;
  InsertsLibrary = IInsertsLibrary;
  Inserts = IInserts;
  Insert = IInsert;
  InsertsLibraries = IInsertsLibraries;
  ProceduresLibraries = IProceduresLibraries;
  SpecificationDescriptions = ISpecificationDescriptions;
  SpecificationDescription = ISpecificationDescription;
  SpecificationStyle = ISpecificationStyle;
  SpecificationColumnStyles = ISpecificationColumnStyles;
  SpecificationColumnStyle = ISpecificationColumnStyle;
  SpecificationSectionStyles = ISpecificationSectionStyles;
  SpecificationSectionStyle = ISpecificationSectionStyle;
  AdditionalBlockStyles = IAdditionalBlockStyles;
  AdditionalBlockStyle = IAdditionalBlockStyle;
  SheetFormat = ISheetFormat;
  SpecificationTuning = ISpecificationTuning;
  SpecificationTuningSections = ISpecificationTuningSections;
  SpecificationTuningSection = ISpecificationTuningSection;
  SpecificationSubsections = ISpecificationSubsections;
  SpecificationSubsection = ISpecificationSubsection;
  AdditionalBlockTunings = IAdditionalBlockTunings;
  AdditionalBlockTuning = IAdditionalBlockTuning;
  AdditionalBlockSectionTunings = IAdditionalBlockSectionTunings;
  AdditionalBlockSectionTuning = IAdditionalBlockSectionTuning;
  TextFont = ITextFont;
  TextStyle = ITextStyle;
  Tabulators = ITabulators;
  Tabulator = ITabulator;
  KompasError = IKompasError;
  SpecificationBaseObjects = ISpecificationBaseObjects;
  SpecificationCommentObjects = ISpecificationCommentObjects;
  SpecificationObject = ISpecificationObject;
  SpecificationBaseObject = ISpecificationBaseObject;
  SpecificationCommentObject = ISpecificationCommentObject;
  SpecificationColumns = ISpecificationColumns;
  SpecificationColumn = ISpecificationColumn;
  SpecificationColumnItems = ISpecificationColumnItems;
  SpecificationColumnItem = ISpecificationColumnItem;
  AttachedDocuments = IAttachedDocuments;
  AttachedDocument = IAttachedDocument;
  PropertyFileName = IPropertyFileName;
  PropertyColor = IPropertyColor;
  LayoutSheets = ILayoutSheets;
  LayoutSheet = ILayoutSheet;
  Converter = IConverter;
  CheckSum = ICheckSum;
  ModelObject = IModelObject;
  ModelObjects = IModelObjects;
  Parts7 = IParts7;
  Part7 = IPart7;
  Sketchs = ISketchs;
  Extrusions = IExtrusions;
  VariableTable = IVariableTable;
  ProgressBarIndicator = IProgressBarIndicator;
  Text = IText;
  TextLine = ITextLine;
  TextItem = ITextItem;
  DrawingText = IDrawingText;
  DrawingTexts = IDrawingTexts;
  Marks = IMarks;
  MarkInsideForm = IMarkInsideForm;
  MarkOnLine = IMarkOnLine;
  MarkOnLeader = IMarkOnLeader;
  UserDataStoragesMng = IUserDataStoragesMng;
  UserDataStorages = IUserDataStorages;
  UserDataStorage = IUserDataStorage;
  BuildingAxes = IBuildingAxes;
  StraightAxis = IStraightAxis;
  ArcAxis = IArcAxis;
  CircleAxis = ICircleAxis;
  AxisJut = IAxisJut;
  MarkNodes = IMarkNodes;
  MarkNode = IMarkNode;
  LineSegments = ILineSegments;
  LineSegment = ILineSegment;
  SystemSettings = ISystemSettings;
  CutUnitMarking = ICutUnitMarking;
  CutUnitMarkings = ICutUnitMarkings;
  UnitMarking = IUnitMarking;
  UnitMarkings = IUnitMarkings;
  Arcs = IArcs;
  _Arc = IArc;
  MultiTextLeader = IMultiTextLeader;
  MultiTextLeaders = IMultiTextLeaders;
  Brace = IBrace;
  Braces = IBraces;
  UnitNumber = IUnitNumber;
  UnitNumbers = IUnitNumbers;
  Sketch = ISketch;
  Extrusion = IExtrusion;
  ParametriticConstraint = IParametriticConstraint;
  CutExtrusion = ICutExtrusion;
  Body7 = IBody7;
  SheetMetalBodies = ISheetMetalBodies;
  SheetMetalBody = ISheetMetalBody;
  Points3D = IPoints3D;
  Point3D = IPoint3D;
  Point3DParamDisplace = IPoint3DParamDisplace;
  Point3DParamIntersect = IPoint3DParamIntersect;
  Point3DParamCenter = IPoint3DParamCenter;
  Point3DParamCurve = IPoint3DParamCurve;
  Point3DParamSurface = IPoint3DParamSurface;
  Point3DParamProjection = IPoint3DParamProjection;
  SheetMetalBends = ISheetMetalBends;
  SheetMetalBend = ISheetMetalBend;
  SheetMetalLineBends = ISheetMetalLineBends;
  SheetMetalLineBend = ISheetMetalLineBend;
  SheetMetalHole = ISheetMetalHole;
  SheetMetalHoles = ISheetMetalHoles;
  SheetMetalCut = ISheetMetalCut;
  SheetMetalCuts = ISheetMetalCuts;
  RadialDimension = IRadialDimension;
  RadialDimensions = IRadialDimensions;
  BreakRadialDimension = IBreakRadialDimension;
  RadialBreakDimensions = IBreakRadialDimensions;
  DiametralDimension = IDiametralDimension;
  DiametralDimensions = IDiametralDimensions;
  LineDimensions3D = ILineDimensions3D;
  BaseLineDimension3D = IBaseLineDimension3D;
  LineDimension3D = ILineDimension3D;
  LineDimension = ILineDimension;
  LineDimensions = ILineDimensions;
  RadialDimension3D = IRadialDimension3D;
  DiametralDimension3D = IDiametralDimension3D;
  RadialDimensions3D = IRadialDimensions3D;
  DiametralDimensions3D = IDiametralDimensions3D;
  BreakLineDimension = IBreakLineDimension;
  BreakLineDimensions = IBreakLineDimensions;
  HeightDimension = IHeightDimension;
  HeightDimensions = IHeightDimensions;
  AngleDimension = IAngleDimension;
  AngleDimensions = IAngleDimensions;
  BreakAngleDimension = IBreakAngleDimension;
  ArcDimension = IArcDimension;
  ArcDimensions = IArcDimensions;
  AngleDimension3D = IAngleDimension3D;
  AngleDimensions3D = IAngleDimensions3D;
  CurveVertexParam = ICurveVertexParam;
  Splines3D = ISplines3D;
  Spline3D = ISpline3D;
  LocalCoordinateSystem = ILocalCoordinateSystem;
  LocalCoordinateSystems = ILocalCoordinateSystems;
  LocalCSAxesDirectionParam = ILocalCSAxesDirectionParam;
  LocalCSEulerParam = ILocalCSEulerParam;
  PolyLine = IPolyLine;
  PolyLines = IPolyLines;
  BaseLeader = IBaseLeader;
  Leaders = ILeaders;
  Roughs = IRoughs;
  Rough = IRough;
  BaseLeader3D = IBaseLeader3D;
  Leaders3D = ILeaders3D;
  Rough3D = IRough3D;
  Roughs3D = IRoughs3D;
  _Base = IBase;
  Bases = IBases;
  TableCell = ITableCell;
  DrawingTable = IDrawingTable;
  DrawingTables = IDrawingTables;
  Tolerances = ITolerances;
  _Tolerance = ITolerance;
  Bases3D = IBases3D;
  Base3D = IBase3D;
  Tolerances3D = ITolerances3D;
  Tolerance3D = ITolerance3D;
  LocalCSOrientByObjectParam = ILocalCSOrientByObjectParam;
  CutLine = ICutLine;
  CutLines = ICutLines;
  ExternalTessellationObject = IExternalTessellationObject;
  ControlPoints = IControlPoints;
  ControlPoint = IControlPoint;
  ConjunctivePoints = IConjunctivePoints;
  ConjunctivePoint = IConjunctivePoint;
  PropertyBmpList = IPropertyBmpList;
  ViewPointer = IViewPointer;
  ViewPointers = IViewPointers;
  Multiline = IMultiline;
  Multilines = IMultilines;
  Contour = IContour;
  ContourSegment = IContourSegment;
  ContourLineSegment = IContourLineSegment;
  ContourArc = IContourArc;
  Curve2D = ICurve2D;
  DrawingContours = IDrawingContours;
  DrawingContour = IDrawingContour;
  SplitLines = ISplitLines;
  SplitLine = ISplitLine;
  SurfacePatches = ISurfacePatches;
  SurfacePatch = ISurfacePatch;
  FaceRemovers = IFaceRemovers;
  FaceRemover = IFaceRemover;
  SurfaceSewers = ISurfaceSewers;
  SurfaceSewer = ISurfaceSewer;
  NurbsSurfaces = INurbsSurfaces;
  NurbsSurface = INurbsSurface;
  PropertyLibExplorer = IPropertyLibExplorer;
  ExternalGDIObject = IExternalGDIObject;
  Circles = ICircles;
  _Circle = ICircle;
  MacroObjects = IMacroObjects;
  MacroObject = IMacroObject;
  Ellipses = IEllipses;
  _Ellipse = IEllipse;
  EllipseArcs = IEllipseArcs;
  _EllipseArc = IEllipseArc;
  _Point = IPoint;
  Points = IPoints;
  _Line = ILine;
  Lines = ILines;
  _Bezier = IBezier;
  Beziers = IBeziers;
  Rectangles = IRectangles;
  _Rectangle = IRectangle;
  RegularPolygons = IRegularPolygons;
  RegularPolygon = IRegularPolygon;
  InsertionObjects = IInsertionObjects;
  InsertionView = IInsertionView;
  InsertionDefinition = IInsertionDefinition;
  PolyLine2D = IPolyLine2D;
  PolyLines2D = IPolyLines2D;
  Equidistants = IEquidistants;
  _Equidistant = IEquidistant;
  _Nurbs = INurbs;
  Nurbses = INurbses;
  CentreMarkers = ICentreMarkers;
  CentreMarker = ICentreMarker;
  RemoteElement = IRemoteElement;
  RemoteElements = IRemoteElements;
  _Attribute = IAttribute;
  _ColumnInfo = IColumnInfo;
  _AttributeType = IAttributeType;
  AxisLine = IAxisLine;
  AxisLines = IAxisLines;
  Variable7 = IVariable7;
  InsertionParameters = IInsertionParameters;
  DrawingGroup = IDrawingGroup;
  DrawingGroups = IDrawingGroups;
  _Hatch = IHatch;
  _Colouring = IColouring;
  Hatches = IHatches;
  Colourings = IColourings;
  _SpecRough = ISpecRough;
  TechnicalDemand = ITechnicalDemand;
  _Raster = IRaster;
  Rasters = IRasters;
  OleDrawingObject = IOleDrawingObject;
  OleDrawingObjects = IOleDrawingObjects;
  SelectionManager = ISelectionManager;
  ChooseManager = IChooseManager;
  SurfacesIntersectionCurve = ISurfacesIntersectionCurve;
  SurfacesIntersectionCurves = ISurfacesIntersectionCurves;
  _Stamp = IStamp;
  WaveLine = IWaveLine;
  WaveLines = IWaveLines;
  BrokenLine = IBrokenLine;
  BrokenLines = IBrokenLines;
  PropertyStyleList = IPropertyStyleList;
  _CopyObjectParam = ICopyObjectParam;
  CurveCopyObjectParam = ICurveCopyObjectParam;
  CircleCopyObjectParam = ICircleCopyObjectParam;
  CircularCopyObjectParam = ICircularCopyObjectParam;
  MeshCopyObjectParam = IMeshCopyObjectParam;
  PrintJob = IPrintJob;
  PrintJob_Sheet = IPrintJob_Sheet;
  _Property = IProperty;
  LibArraySettings = ILibArraySettings;
  ReportProcess = IReportProcess;
  Equidistants3D = IEquidistants3D;
  Equidistant3D = IEquidistant3D;


// *********************************************************************//
// Declaration of structures, unions and aliases.                         
// *********************************************************************//
  PWordBool1 = ^WordBool; {*}
  PInteger1 = ^Integer; {*}
  PDouble1 = ^Double; {*}


// *********************************************************************//
// Interface: IKompasAPIObject
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C799A83-C0A4-4312-BEB0-21CBD7FF4C13}
// *********************************************************************//
  IKompasAPIObject = interface(IDispatch)
    ['{5C799A83-C0A4-4312-BEB0-21CBD7FF4C13}']
    function  Get_Parent: IKompasAPIObject; safecall;
    function  Get_Application: IApplication; safecall;
    function  Get_Type_: KompasAPIObjectTypeEnum; safecall;
    function  Get_Reference: Integer; safecall;
    property Parent: IKompasAPIObject read Get_Parent;
    property Application: IApplication read Get_Application;
    property Type_: KompasAPIObjectTypeEnum read Get_Type_;
    property Reference: Integer read Get_Reference;
  end;

// *********************************************************************//
// DispIntf:  IKompasAPIObjectDisp
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C799A83-C0A4-4312-BEB0-21CBD7FF4C13}
// *********************************************************************//
  IKompasAPIObjectDisp = dispinterface
    ['{5C799A83-C0A4-4312-BEB0-21CBD7FF4C13}']
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IApplication
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6A2EFAF7-8254-45A5-9DC8-2213F16AF5D7}
// *********************************************************************//
  IApplication = interface(IKompasAPIObject)
    ['{6A2EFAF7-8254-45A5-9DC8-2213F16AF5D7}']
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Visible: WordBool; safecall;
    function  Get_Documents: IDocuments; safecall;
    procedure Quit; safecall;
    function  CreateProcessParam: IProcessParam; safecall;
    procedure StopCurrentProcess(PostMessage: WordBool; const PDoc: IKompasDocument); safecall;
    function  CreatePropertyManager(NewManager: WordBool): IPropertyManager; safecall;
    procedure Set_ActiveDocument(const PDoc: IKompasDocument); safecall;
    function  Get_ActiveDocument: IKompasDocument; safecall;
    function  Get_LibraryManager: ILibraryManager; safecall;
    function  Get_KompasError: IKompasError; safecall;
    function  Get_Converter(Library_: OleVariant): IConverter; safecall;
    function  Get_CheckSum: ICheckSum; safecall;
    function  Get_ProgressBarIndicator: IProgressBarIndicator; safecall;
    procedure Set_HideMessage(PVal: ksHideMessageEnum); safecall;
    function  Get_HideMessage: ksHideMessageEnum; safecall;
    function  ExecuteKompasCommand(CommandID: Integer; PostMessage: WordBool): WordBool; safecall;
    function  IsKompasCommandEnable(CommandID: Integer): WordBool; safecall;
    function  IsKompasCommandCheck(CommandID: Integer): Integer; safecall;
    function  Get_SystemSettings: ISystemSettings; safecall;
    function  Get_ApplicationName(FullName: WordBool): WideString; safecall;
    function  Get_Math2D: IMath2D; safecall;
    function  Get_PrintJob: IPrintJob; safecall;
    function  MessageBoxEx(const Text: WideString; const Caption: WideString; Flags: Integer): Integer; safecall;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Documents: IDocuments read Get_Documents;
    property ActiveDocument: IKompasDocument read Get_ActiveDocument write Set_ActiveDocument;
    property LibraryManager: ILibraryManager read Get_LibraryManager;
    property KompasError: IKompasError read Get_KompasError;
    property Converter[Library_: OleVariant]: IConverter read Get_Converter;
    property CheckSum: ICheckSum read Get_CheckSum;
    property ProgressBarIndicator: IProgressBarIndicator read Get_ProgressBarIndicator;
    property HideMessage: ksHideMessageEnum read Get_HideMessage write Set_HideMessage;
    property SystemSettings: ISystemSettings read Get_SystemSettings;
    property ApplicationName[FullName: WordBool]: WideString read Get_ApplicationName;
    property Math2D: IMath2D read Get_Math2D;
    property PrintJob: IPrintJob read Get_PrintJob;
  end;

// *********************************************************************//
// DispIntf:  IApplicationDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6A2EFAF7-8254-45A5-9DC8-2213F16AF5D7}
// *********************************************************************//
  IApplicationDisp = dispinterface
    ['{6A2EFAF7-8254-45A5-9DC8-2213F16AF5D7}']
    property Visible: WordBool dispid 1;
    property Documents: IDocuments readonly dispid 2;
    procedure Quit; dispid 3;
    function  CreateProcessParam: IProcessParam; dispid 4;
    procedure StopCurrentProcess(PostMessage: WordBool; const PDoc: IKompasDocument); dispid 5;
    function  CreatePropertyManager(NewManager: WordBool): IPropertyManager; dispid 6;
    property ActiveDocument: IKompasDocument dispid 7;
    property LibraryManager: ILibraryManager readonly dispid 8;
    property KompasError: IKompasError readonly dispid 9;
    property Converter[Library_: OleVariant]: IConverter readonly dispid 10;
    property CheckSum: ICheckSum readonly dispid 11;
    property ProgressBarIndicator: IProgressBarIndicator readonly dispid 12;
    property HideMessage: ksHideMessageEnum dispid 13;
    function  ExecuteKompasCommand(CommandID: Integer; PostMessage: WordBool): WordBool; dispid 14;
    function  IsKompasCommandEnable(CommandID: Integer): WordBool; dispid 15;
    function  IsKompasCommandCheck(CommandID: Integer): Integer; dispid 16;
    property SystemSettings: ISystemSettings readonly dispid 17;
    property ApplicationName[FullName: WordBool]: WideString readonly dispid 18;
    property Math2D: IMath2D readonly dispid 19;
    property PrintJob: IPrintJob readonly dispid 20;
    function  MessageBoxEx(const Text: WideString; const Caption: WideString; Flags: Integer): Integer; dispid 21;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IKompasCollection
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {901F85DE-FA5A-4314-BD75-066A79AF20A8}
// *********************************************************************//
  IKompasCollection = interface(IKompasAPIObject)
    ['{901F85DE-FA5A-4314-BD75-066A79AF20A8}']
    function  Get__NewEnum: IUnknown; safecall;
    function  Get_Count: Integer; safecall;
    property _NewEnum: IUnknown read Get__NewEnum;
    property Count: Integer read Get_Count;
  end;

// *********************************************************************//
// DispIntf:  IKompasCollectionDisp
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {901F85DE-FA5A-4314-BD75-066A79AF20A8}
// *********************************************************************//
  IKompasCollectionDisp = dispinterface
    ['{901F85DE-FA5A-4314-BD75-066A79AF20A8}']
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDocuments
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8BF39F08-5537-4910-84CE-B338E55F7BCF}
// *********************************************************************//
  IDocuments = interface(IKompasCollection)
    ['{8BF39F08-5537-4910-84CE-B338E55F7BCF}']
    function  Get_Item(Index: OleVariant): IKompasDocument; safecall;
    function  Add(Type_: DocumentTypeEnum; Visible: WordBool): IKompasDocument; safecall;
    function  Open(const PathName: WideString; Visible: WordBool; ReadOnly: WordBool): IKompasDocument; safecall;
    function  OpenEx(const PathName: WideString; Visible: WordBool; ReadOnly: WordBool; 
                     LoadCombinationIndex: OleVariant): IKompasDocument; safecall;
    function  GetLoadCombinations(const PathName: WideString; out CurrentIndex: Integer): OleVariant; safecall;
    function  AddWithDefaultSettings(Type_: DocumentTypeEnum; Visible: WordBool): IKompasDocument; safecall;
    property Item[Index: OleVariant]: IKompasDocument read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IDocumentsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8BF39F08-5537-4910-84CE-B338E55F7BCF}
// *********************************************************************//
  IDocumentsDisp = dispinterface
    ['{8BF39F08-5537-4910-84CE-B338E55F7BCF}']
    property Item[Index: OleVariant]: IKompasDocument readonly dispid 0; default;
    function  Add(Type_: DocumentTypeEnum; Visible: WordBool): IKompasDocument; dispid 1;
    function  Open(const PathName: WideString; Visible: WordBool; ReadOnly: WordBool): IKompasDocument; dispid 2;
    function  OpenEx(const PathName: WideString; Visible: WordBool; ReadOnly: WordBool; 
                     LoadCombinationIndex: OleVariant): IKompasDocument; dispid 3;
    function  GetLoadCombinations(const PathName: WideString; out CurrentIndex: Integer): OleVariant; dispid 4;
    function  AddWithDefaultSettings(Type_: DocumentTypeEnum; Visible: WordBool): IKompasDocument; dispid 5;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IKompasDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C6E318D-BD6E-4AFA-8A13-977EAA0845EF}
// *********************************************************************//
  IKompasDocument = interface(IKompasAPIObject)
    ['{5C6E318D-BD6E-4AFA-8A13-977EAA0845EF}']
    function  Get_DocumentType: DocumentTypeEnum; safecall;
    function  Get_DocumentFrames: IDocumentFrames; safecall;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; safecall;
    procedure Save; safecall;
    procedure SaveAs(const PathName: WideString); safecall;
    function  Get_Name: WideString; safecall;
    function  Get_PathName: WideString; safecall;
    function  Get_Path: WideString; safecall;
    function  Get_Visible: WordBool; safecall;
    function  Get_Active: WordBool; safecall;
    procedure Set_Active(PVal: WordBool); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_Changed: WordBool; safecall;
    function  Get_DocumentSettings: IDocumentSettings; safecall;
    function  Get_SpecificationDescriptions: ISpecificationDescriptions; safecall;
    function  Get_LayoutSheets: ILayoutSheets; safecall;
    function  Get_UserDataStoragesMng: IUserDataStoragesMng; safecall;
    property DocumentType: DocumentTypeEnum read Get_DocumentType;
    property DocumentFrames: IDocumentFrames read Get_DocumentFrames;
    property Name: WideString read Get_Name;
    property PathName: WideString read Get_PathName;
    property Path: WideString read Get_Path;
    property Visible: WordBool read Get_Visible;
    property Active: WordBool read Get_Active write Set_Active;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property Changed: WordBool read Get_Changed;
    property DocumentSettings: IDocumentSettings read Get_DocumentSettings;
    property SpecificationDescriptions: ISpecificationDescriptions read Get_SpecificationDescriptions;
    property LayoutSheets: ILayoutSheets read Get_LayoutSheets;
    property UserDataStoragesMng: IUserDataStoragesMng read Get_UserDataStoragesMng;
  end;

// *********************************************************************//
// DispIntf:  IKompasDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C6E318D-BD6E-4AFA-8A13-977EAA0845EF}
// *********************************************************************//
  IKompasDocumentDisp = dispinterface
    ['{5C6E318D-BD6E-4AFA-8A13-977EAA0845EF}']
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDocumentFrames
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1D18C466-C085-4D68-A465-A85D0C8E3A0E}
// *********************************************************************//
  IDocumentFrames = interface(IKompasCollection)
    ['{1D18C466-C085-4D68-A465-A85D0C8E3A0E}']
    function  Get_Item(Index: OleVariant): IDocumentFrame; safecall;
    property Item[Index: OleVariant]: IDocumentFrame read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IDocumentFramesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1D18C466-C085-4D68-A465-A85D0C8E3A0E}
// *********************************************************************//
  IDocumentFramesDisp = dispinterface
    ['{1D18C466-C085-4D68-A465-A85D0C8E3A0E}']
    property Item[Index: OleVariant]: IDocumentFrame readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDocumentFrame
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4437FABA-990F-45E2-B1A2-7754FB326B76}
// *********************************************************************//
  IDocumentFrame = interface(IKompasAPIObject)
    ['{4437FABA-990F-45E2-B1A2-7754FB326B76}']
    procedure Set_Regime(PVal: FrameRegimeEnum); safecall;
    function  Get_Regime: FrameRegimeEnum; safecall;
    procedure Set_Active(PVal: WordBool); safecall;
    function  Get_Active: WordBool; safecall;
    function  Get_Caption: WideString; safecall;
    procedure Zoom(X1: Double; Y1: Double; X2: Double; Y2: Double); safecall;
    procedure ZoomPrevNextOrAll(Type_: ZoomTypeEnum); safecall;
    procedure ZoomScale(X: Double; Y: Double; Scale: Double); safecall;
    procedure GetZoomScale(out X: Double; out Y: Double; out Scale: Double); safecall;
    function  GetHWND: OLE_HANDLE; safecall;
    procedure SetGabaritModifying; safecall;
    procedure RefreshWindow; safecall;
    function  ConvertCoordinates(Type_: ConvertCoordTypeEnum; LX: Integer; LY: Integer; 
                                 out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  ExecuteKompasCommand(CommandID: Integer; PostMessage: WordBool): WordBool; safecall;
    function  IsKompasCommandEnable(CommandID: Integer): WordBool; safecall;
    function  IsKompasCommandCheck(CommandID: Integer): Integer; safecall;
    property Regime: FrameRegimeEnum read Get_Regime write Set_Regime;
    property Active: WordBool read Get_Active write Set_Active;
    property Caption: WideString read Get_Caption;
  end;

// *********************************************************************//
// DispIntf:  IDocumentFrameDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4437FABA-990F-45E2-B1A2-7754FB326B76}
// *********************************************************************//
  IDocumentFrameDisp = dispinterface
    ['{4437FABA-990F-45E2-B1A2-7754FB326B76}']
    property Regime: FrameRegimeEnum dispid 1;
    property Active: WordBool dispid 2;
    property Caption: WideString readonly dispid 3;
    procedure Zoom(X1: Double; Y1: Double; X2: Double; Y2: Double); dispid 4;
    procedure ZoomPrevNextOrAll(Type_: ZoomTypeEnum); dispid 5;
    procedure ZoomScale(X: Double; Y: Double; Scale: Double); dispid 6;
    procedure GetZoomScale(out X: Double; out Y: Double; out Scale: Double); dispid 7;
    function  GetHWND: OLE_HANDLE; dispid 8;
    procedure SetGabaritModifying; dispid 9;
    procedure RefreshWindow; dispid 10;
    function  ConvertCoordinates(Type_: ConvertCoordTypeEnum; LX: Integer; LY: Integer; 
                                 out X: Double; out Y: Double; out Z: Double): WordBool; dispid 11;
    function  ExecuteKompasCommand(CommandID: Integer; PostMessage: WordBool): WordBool; dispid 12;
    function  IsKompasCommandEnable(CommandID: Integer): WordBool; dispid 13;
    function  IsKompasCommandCheck(CommandID: Integer): Integer; dispid 14;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDocumentSettings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B35FF50E-2991-4630-8AB8-DC3153E7971A}
// *********************************************************************//
  IDocumentSettings = interface(IKompasAPIObject)
    ['{B35FF50E-2991-4630-8AB8-DC3153E7971A}']
  end;

// *********************************************************************//
// DispIntf:  IDocumentSettingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B35FF50E-2991-4630-8AB8-DC3153E7971A}
// *********************************************************************//
  IDocumentSettingsDisp = dispinterface
    ['{B35FF50E-2991-4630-8AB8-DC3153E7971A}']
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationDescriptions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9632C5C-86E1-4BC9-83A5-A954E407246A}
// *********************************************************************//
  ISpecificationDescriptions = interface(IKompasCollection)
    ['{B9632C5C-86E1-4BC9-83A5-A954E407246A}']
    function  Get_Item(Index: OleVariant): ISpecificationDescription; safecall;
    function  Add(const LayoutName: WideString; StyleID: Integer; const SpcName: WideString): ISpecificationDescription; safecall;
    function  Get_Description(const LayoutName: WideString; StyleID: Integer): ISpecificationDescription; safecall;
    function  Get_Active: ISpecificationDescription; safecall;
    property Item[Index: OleVariant]: ISpecificationDescription read Get_Item; default;
    property Description[const LayoutName: WideString; StyleID: Integer]: ISpecificationDescription read Get_Description;
    property Active: ISpecificationDescription read Get_Active;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationDescriptionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9632C5C-86E1-4BC9-83A5-A954E407246A}
// *********************************************************************//
  ISpecificationDescriptionsDisp = dispinterface
    ['{B9632C5C-86E1-4BC9-83A5-A954E407246A}']
    property Item[Index: OleVariant]: ISpecificationDescription readonly dispid 0; default;
    function  Add(const LayoutName: WideString; StyleID: Integer; const SpcName: WideString): ISpecificationDescription; dispid 1;
    property Description[const LayoutName: WideString; StyleID: Integer]: ISpecificationDescription readonly dispid 2;
    property Active: ISpecificationDescription readonly dispid 3;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationDescription
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9678959E-166B-45F3-BDE8-88BBF4645F5C}
// *********************************************************************//
  ISpecificationDescription = interface(IKompasAPIObject)
    ['{9678959E-166B-45F3-BDE8-88BBF4645F5C}']
    function  Get_LayoutName: WideString; safecall;
    procedure Set_LayoutName(const PVal: WideString); safecall;
    function  Get_StyleID: Integer; safecall;
    procedure Set_StyleID(PVal: Integer); safecall;
    function  Get_SpecificationDocumentName: WideString; safecall;
    procedure Set_SpecificationDocumentName(const PVal: WideString); safecall;
    function  Get_Active: WordBool; safecall;
    procedure Set_Active(PVal: WordBool); safecall;
    function  Update: WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Get_SpecificationStyle: ISpecificationStyle; safecall;
    function  Get_SpecificationTuning: ISpecificationTuning; safecall;
    function  Get_Objects: OleVariant; safecall;
    function  Get_BaseObjects: ISpecificationBaseObjects; safecall;
    function  Get_CommentObjects: ISpecificationCommentObjects; safecall;
    function  Get_ShowOnSheet: WordBool; safecall;
    procedure Set_ShowOnSheet(PVal: WordBool); safecall;
    function  Get_CurrentObject: ISpecificationObject; safecall;
    procedure Set_CurrentObject(const Result: ISpecificationObject); safecall;
    function  Get_ShowAllObjects: WordBool; safecall;
    procedure Set_ShowAllObjects(PVal: WordBool); safecall;
    function  Get_PerformanceName(PerformanceIndex: Integer; BlockIndex: Integer): WideString; safecall;
    procedure Set_PerformanceName(PerformanceIndex: Integer; BlockIndex: Integer; 
                                  const PVal: WideString); safecall;
    function  Get_DelegateMode: WordBool; safecall;
    procedure Set_DelegateMode(PVal: WordBool); safecall;
    property LayoutName: WideString read Get_LayoutName write Set_LayoutName;
    property StyleID: Integer read Get_StyleID write Set_StyleID;
    property SpecificationDocumentName: WideString read Get_SpecificationDocumentName write Set_SpecificationDocumentName;
    property Active: WordBool read Get_Active write Set_Active;
    property SpecificationStyle: ISpecificationStyle read Get_SpecificationStyle;
    property SpecificationTuning: ISpecificationTuning read Get_SpecificationTuning;
    property Objects: OleVariant read Get_Objects;
    property BaseObjects: ISpecificationBaseObjects read Get_BaseObjects;
    property CommentObjects: ISpecificationCommentObjects read Get_CommentObjects;
    property ShowOnSheet: WordBool read Get_ShowOnSheet write Set_ShowOnSheet;
    property CurrentObject: ISpecificationObject read Get_CurrentObject write Set_CurrentObject;
    property ShowAllObjects: WordBool read Get_ShowAllObjects write Set_ShowAllObjects;
    property PerformanceName[PerformanceIndex: Integer; BlockIndex: Integer]: WideString read Get_PerformanceName write Set_PerformanceName;
    property DelegateMode: WordBool read Get_DelegateMode write Set_DelegateMode;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationDescriptionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9678959E-166B-45F3-BDE8-88BBF4645F5C}
// *********************************************************************//
  ISpecificationDescriptionDisp = dispinterface
    ['{9678959E-166B-45F3-BDE8-88BBF4645F5C}']
    property LayoutName: WideString dispid 1;
    property StyleID: Integer dispid 2;
    property SpecificationDocumentName: WideString dispid 3;
    property Active: WordBool dispid 4;
    function  Update: WordBool; dispid 5;
    function  Delete: WordBool; dispid 6;
    property SpecificationStyle: ISpecificationStyle readonly dispid 7;
    property SpecificationTuning: ISpecificationTuning readonly dispid 8;
    property Objects: OleVariant readonly dispid 9;
    property BaseObjects: ISpecificationBaseObjects readonly dispid 10;
    property CommentObjects: ISpecificationCommentObjects readonly dispid 11;
    property ShowOnSheet: WordBool dispid 12;
    property CurrentObject: ISpecificationObject dispid 13;
    property ShowAllObjects: WordBool dispid 14;
    property PerformanceName[PerformanceIndex: Integer; BlockIndex: Integer]: WideString dispid 15;
    property DelegateMode: WordBool dispid 16;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationStyle
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F237D2B3-DFEE-4702-B71F-E5F6923F03E6}
// *********************************************************************//
  ISpecificationStyle = interface(IKompasAPIObject)
    ['{F237D2B3-DFEE-4702-B71F-E5F6923F03E6}']
    function  Get_LayoutName1: WideString; safecall;
    function  Get_StyleID1: Integer; safecall;
    function  Get_LayoutName2: WideString; safecall;
    function  Get_StyleID2: Integer; safecall;
    function  Get_Variant: ksSpecificationVariantEnum; safecall;
    function  Get_SectionOn: WordBool; safecall;
    function  Get_SpecificationTuning: ISpecificationTuning; safecall;
    function  Get_Format: ISheetFormat; safecall;
    function  Get_Columns: ISpecificationColumnStyles; safecall;
    function  Get_AdditionalColumns: ISpecificationColumnStyles; safecall;
    function  Get_Sections: ISpecificationSectionStyles; safecall;
    function  Get_AdditionalBlocks: IAdditionalBlockStyles; safecall;
    function  Get_SortSectionDown: WordBool; safecall;
    property LayoutName1: WideString read Get_LayoutName1;
    property StyleID1: Integer read Get_StyleID1;
    property LayoutName2: WideString read Get_LayoutName2;
    property StyleID2: Integer read Get_StyleID2;
    property Variant: ksSpecificationVariantEnum read Get_Variant;
    property SectionOn: WordBool read Get_SectionOn;
    property SpecificationTuning: ISpecificationTuning read Get_SpecificationTuning;
    property Format: ISheetFormat read Get_Format;
    property Columns: ISpecificationColumnStyles read Get_Columns;
    property AdditionalColumns: ISpecificationColumnStyles read Get_AdditionalColumns;
    property Sections: ISpecificationSectionStyles read Get_Sections;
    property AdditionalBlocks: IAdditionalBlockStyles read Get_AdditionalBlocks;
    property SortSectionDown: WordBool read Get_SortSectionDown;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationStyleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F237D2B3-DFEE-4702-B71F-E5F6923F03E6}
// *********************************************************************//
  ISpecificationStyleDisp = dispinterface
    ['{F237D2B3-DFEE-4702-B71F-E5F6923F03E6}']
    property LayoutName1: WideString readonly dispid 1;
    property StyleID1: Integer readonly dispid 2;
    property LayoutName2: WideString readonly dispid 3;
    property StyleID2: Integer readonly dispid 4;
    property Variant: ksSpecificationVariantEnum readonly dispid 5;
    property SectionOn: WordBool readonly dispid 6;
    property SpecificationTuning: ISpecificationTuning readonly dispid 7;
    property Format: ISheetFormat readonly dispid 8;
    property Columns: ISpecificationColumnStyles readonly dispid 9;
    property AdditionalColumns: ISpecificationColumnStyles readonly dispid 10;
    property Sections: ISpecificationSectionStyles readonly dispid 11;
    property AdditionalBlocks: IAdditionalBlockStyles readonly dispid 12;
    property SortSectionDown: WordBool readonly dispid 13;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationTuning
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BB719D42-E44C-445B-969A-0E2F63E97FC8}
// *********************************************************************//
  ISpecificationTuning = interface(IKompasAPIObject)
    ['{BB719D42-E44C-445B-969A-0E2F63E97FC8}']
    function  Get_LinkType: ksSpecificationLinkTypeEnum; safecall;
    procedure Set_LinkType(PVal: ksSpecificationLinkTypeEnum); safecall;
    function  Get_CalculateZone: WordBool; safecall;
    procedure Set_CalculateZone(PVal: WordBool); safecall;
    function  Get_CalculatePosition: WordBool; safecall;
    procedure Set_CalculatePosition(PVal: WordBool); safecall;
    function  Get_ShowSectionName: WordBool; safecall;
    procedure Set_ShowSectionName(PVal: WordBool); safecall;
    function  Get_DeleteGeometry: WordBool; safecall;
    procedure Set_DeleteGeometry(PVal: WordBool); safecall;
    function  Get_DisableEmptyString: WordBool; safecall;
    procedure Set_DisableEmptyString(PVal: WordBool); safecall;
    function  Get_DisableEmptyBlockString: WordBool; safecall;
    procedure Set_DisableEmptyBlockString(PVal: WordBool); safecall;
    function  Get_InsertNull: WordBool; safecall;
    procedure Set_InsertNull(PVal: WordBool); safecall;
    function  Get_InsertDash: WordBool; safecall;
    procedure Set_InsertDash(PVal: WordBool); safecall;
    function  Get_ShowInfoByObjects: WordBool; safecall;
    procedure Set_ShowInfoByObjects(PVal: WordBool); safecall;
    function  Get_SupportPerformance: WordBool; safecall;
    procedure Set_SupportPerformance(PVal: WordBool); safecall;
    function  Get_ShowPerformanceFull: WordBool; safecall;
    procedure Set_ShowPerformanceFull(PVal: WordBool); safecall;
    function  Get_BlockOnNewPage: WordBool; safecall;
    procedure Set_BlockOnNewPage(PVal: WordBool); safecall;
    function  Get_PositionUp: WordBool; safecall;
    procedure Set_PositionUp(PVal: WordBool); safecall;
    function  Get_DrawBottomUp: WordBool; safecall;
    procedure Set_DrawBottomUp(PVal: WordBool); safecall;
    function  Get_UserTextStyle: WordBool; safecall;
    procedure Set_UserTextStyle(PVal: WordBool); safecall;
    function  Get_PerformanceCount: Integer; safecall;
    procedure Set_PerformanceCount(PVal: Integer); safecall;
    function  Get_BlockCount: Integer; safecall;
    function  Get_InitialPosition: Integer; safecall;
    procedure Set_InitialPosition(PVal: Integer); safecall;
    function  Get_PredefinedTextFileName: WideString; safecall;
    procedure Set_PredefinedTextFileName(const PVal: WideString); safecall;
    function  Get_SectionTextStyleFirst: ITextStyle; safecall;
    function  Get_SectionTextStyleNext: ITextStyle; safecall;
    function  Get_ObjectTextStyle: ITextStyle; safecall;
    function  Get_Sections: ISpecificationTuningSections; safecall;
    function  Get_UseAdditionalBlocks: WordBool; safecall;
    procedure Set_UseAdditionalBlocks(PVal: WordBool); safecall;
    function  Get_AdditionalBlocks: IAdditionalBlockTunings; safecall;
    function  Get_ShowAdditionalBlockName: WordBool; safecall;
    procedure Set_ShowAdditionalBlockName(PVal: WordBool); safecall;
    function  Get_ShowNestingBlockName: WordBool; safecall;
    procedure Set_ShowNestingBlockName(PVal: WordBool); safecall;
    function  Get_ShowPerformanceBlockName: WordBool; safecall;
    procedure Set_ShowPerformanceBlockName(PVal: WordBool); safecall;
    function  Get_PerformanceBlockTextStyleFirst: ITextStyle; safecall;
    function  Get_PerformanceBlockTextStyleNext: ITextStyle; safecall;
    function  Get_AdditionalBlockTextStyleFirst: ITextStyle; safecall;
    function  Get_AdditionalBlockTextStyleNext: ITextStyle; safecall;
    function  Get_NestingBlockTextStyleFirst: ITextStyle; safecall;
    function  Get_NestingBlockTextStyleNext: ITextStyle; safecall;
    function  Get_DisableNestingBlockEmptyStrings: WordBool; safecall;
    procedure Set_DisableNestingBlockEmptyStrings(PVal: WordBool); safecall;
    function  Get_DisableAdditionalBlockEmptyStrings: WordBool; safecall;
    procedure Set_DisableAdditionalBlockEmptyStrings(PVal: WordBool); safecall;
    function  Update: WordBool; safecall;
    function  Get_DeleteSpcObjectOnDeleteGeometry: WordBool; safecall;
    procedure Set_DeleteSpcObjectOnDeleteGeometry(PVal: WordBool); safecall;
    function  Get_CopySpcObjectOnCopyGeometry: WordBool; safecall;
    procedure Set_CopySpcObjectOnCopyGeometry(PVal: WordBool); safecall;
    property LinkType: ksSpecificationLinkTypeEnum read Get_LinkType write Set_LinkType;
    property CalculateZone: WordBool read Get_CalculateZone write Set_CalculateZone;
    property CalculatePosition: WordBool read Get_CalculatePosition write Set_CalculatePosition;
    property ShowSectionName: WordBool read Get_ShowSectionName write Set_ShowSectionName;
    property DeleteGeometry: WordBool read Get_DeleteGeometry write Set_DeleteGeometry;
    property DisableEmptyString: WordBool read Get_DisableEmptyString write Set_DisableEmptyString;
    property DisableEmptyBlockString: WordBool read Get_DisableEmptyBlockString write Set_DisableEmptyBlockString;
    property InsertNull: WordBool read Get_InsertNull write Set_InsertNull;
    property InsertDash: WordBool read Get_InsertDash write Set_InsertDash;
    property ShowInfoByObjects: WordBool read Get_ShowInfoByObjects write Set_ShowInfoByObjects;
    property SupportPerformance: WordBool read Get_SupportPerformance write Set_SupportPerformance;
    property ShowPerformanceFull: WordBool read Get_ShowPerformanceFull write Set_ShowPerformanceFull;
    property BlockOnNewPage: WordBool read Get_BlockOnNewPage write Set_BlockOnNewPage;
    property PositionUp: WordBool read Get_PositionUp write Set_PositionUp;
    property DrawBottomUp: WordBool read Get_DrawBottomUp write Set_DrawBottomUp;
    property UserTextStyle: WordBool read Get_UserTextStyle write Set_UserTextStyle;
    property PerformanceCount: Integer read Get_PerformanceCount write Set_PerformanceCount;
    property BlockCount: Integer read Get_BlockCount;
    property InitialPosition: Integer read Get_InitialPosition write Set_InitialPosition;
    property PredefinedTextFileName: WideString read Get_PredefinedTextFileName write Set_PredefinedTextFileName;
    property SectionTextStyleFirst: ITextStyle read Get_SectionTextStyleFirst;
    property SectionTextStyleNext: ITextStyle read Get_SectionTextStyleNext;
    property ObjectTextStyle: ITextStyle read Get_ObjectTextStyle;
    property Sections: ISpecificationTuningSections read Get_Sections;
    property UseAdditionalBlocks: WordBool read Get_UseAdditionalBlocks write Set_UseAdditionalBlocks;
    property AdditionalBlocks: IAdditionalBlockTunings read Get_AdditionalBlocks;
    property ShowAdditionalBlockName: WordBool read Get_ShowAdditionalBlockName write Set_ShowAdditionalBlockName;
    property ShowNestingBlockName: WordBool read Get_ShowNestingBlockName write Set_ShowNestingBlockName;
    property ShowPerformanceBlockName: WordBool read Get_ShowPerformanceBlockName write Set_ShowPerformanceBlockName;
    property PerformanceBlockTextStyleFirst: ITextStyle read Get_PerformanceBlockTextStyleFirst;
    property PerformanceBlockTextStyleNext: ITextStyle read Get_PerformanceBlockTextStyleNext;
    property AdditionalBlockTextStyleFirst: ITextStyle read Get_AdditionalBlockTextStyleFirst;
    property AdditionalBlockTextStyleNext: ITextStyle read Get_AdditionalBlockTextStyleNext;
    property NestingBlockTextStyleFirst: ITextStyle read Get_NestingBlockTextStyleFirst;
    property NestingBlockTextStyleNext: ITextStyle read Get_NestingBlockTextStyleNext;
    property DisableNestingBlockEmptyStrings: WordBool read Get_DisableNestingBlockEmptyStrings write Set_DisableNestingBlockEmptyStrings;
    property DisableAdditionalBlockEmptyStrings: WordBool read Get_DisableAdditionalBlockEmptyStrings write Set_DisableAdditionalBlockEmptyStrings;
    property DeleteSpcObjectOnDeleteGeometry: WordBool read Get_DeleteSpcObjectOnDeleteGeometry write Set_DeleteSpcObjectOnDeleteGeometry;
    property CopySpcObjectOnCopyGeometry: WordBool read Get_CopySpcObjectOnCopyGeometry write Set_CopySpcObjectOnCopyGeometry;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationTuningDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BB719D42-E44C-445B-969A-0E2F63E97FC8}
// *********************************************************************//
  ISpecificationTuningDisp = dispinterface
    ['{BB719D42-E44C-445B-969A-0E2F63E97FC8}']
    property LinkType: ksSpecificationLinkTypeEnum dispid 1;
    property CalculateZone: WordBool dispid 2;
    property CalculatePosition: WordBool dispid 3;
    property ShowSectionName: WordBool dispid 4;
    property DeleteGeometry: WordBool dispid 5;
    property DisableEmptyString: WordBool dispid 6;
    property DisableEmptyBlockString: WordBool dispid 7;
    property InsertNull: WordBool dispid 8;
    property InsertDash: WordBool dispid 9;
    property ShowInfoByObjects: WordBool dispid 10;
    property SupportPerformance: WordBool dispid 11;
    property ShowPerformanceFull: WordBool dispid 12;
    property BlockOnNewPage: WordBool dispid 13;
    property PositionUp: WordBool dispid 14;
    property DrawBottomUp: WordBool dispid 15;
    property UserTextStyle: WordBool dispid 16;
    property PerformanceCount: Integer dispid 17;
    property BlockCount: Integer readonly dispid 18;
    property InitialPosition: Integer dispid 19;
    property PredefinedTextFileName: WideString dispid 20;
    property SectionTextStyleFirst: ITextStyle readonly dispid 21;
    property SectionTextStyleNext: ITextStyle readonly dispid 22;
    property ObjectTextStyle: ITextStyle readonly dispid 23;
    property Sections: ISpecificationTuningSections readonly dispid 24;
    property UseAdditionalBlocks: WordBool dispid 25;
    property AdditionalBlocks: IAdditionalBlockTunings readonly dispid 26;
    property ShowAdditionalBlockName: WordBool dispid 27;
    property ShowNestingBlockName: WordBool dispid 28;
    property ShowPerformanceBlockName: WordBool dispid 29;
    property PerformanceBlockTextStyleFirst: ITextStyle readonly dispid 30;
    property PerformanceBlockTextStyleNext: ITextStyle readonly dispid 31;
    property AdditionalBlockTextStyleFirst: ITextStyle readonly dispid 32;
    property AdditionalBlockTextStyleNext: ITextStyle readonly dispid 33;
    property NestingBlockTextStyleFirst: ITextStyle readonly dispid 34;
    property NestingBlockTextStyleNext: ITextStyle readonly dispid 35;
    property DisableNestingBlockEmptyStrings: WordBool dispid 36;
    property DisableAdditionalBlockEmptyStrings: WordBool dispid 37;
    function  Update: WordBool; dispid 38;
    property DeleteSpcObjectOnDeleteGeometry: WordBool dispid 39;
    property CopySpcObjectOnCopyGeometry: WordBool dispid 40;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITextStyle
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7EA65CA0-420D-4E1D-8C19-998495C4DA2F}
// *********************************************************************//
  ITextStyle = interface(IKompasAPIObject)
    ['{7EA65CA0-420D-4E1D-8C19-998495C4DA2F}']
    function  Get_Name: WideString; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Number: Integer; safecall;
    procedure Set_Number(PVal: Integer); safecall;
    function  Get_Step: Double; safecall;
    procedure Set_Step(PVal: Double); safecall;
    function  Get_Align: ksAlignEnum; safecall;
    procedure Set_Align(PVal: ksAlignEnum); safecall;
    function  Get_IndentedLine: Double; safecall;
    procedure Set_IndentedLine(PVal: Double); safecall;
    function  Get_StepBeforeParagraph: Double; safecall;
    procedure Set_StepBeforeParagraph(PVal: Double); safecall;
    function  Get_StepAfterParagraph: Double; safecall;
    procedure Set_StepAfterParagraph(PVal: Double); safecall;
    function  Get_LeftEdge: Double; safecall;
    procedure Set_LeftEdge(PVal: Double); safecall;
    function  Get_RightEdge: Double; safecall;
    procedure Set_RightEdge(PVal: Double); safecall;
    function  Get_Extended: WordBool; safecall;
    procedure Set_Extended(PVal: WordBool); safecall;
    function  Get_LinesCount: Integer; safecall;
    procedure Set_LinesCount(PVal: Integer); safecall;
    function  Get_EnableLine1: WordBool; safecall;
    procedure Set_EnableLine1(PVal: WordBool); safecall;
    function  Get_Height1: Double; safecall;
    procedure Set_Height1(PVal: Double); safecall;
    function  Get_WidthFactor1: Double; safecall;
    procedure Set_WidthFactor1(PVal: Double); safecall;
    function  Get_Step1: Double; safecall;
    procedure Set_Step1(PVal: Double); safecall;
    function  Get_EnableLine2: WordBool; safecall;
    procedure Set_EnableLine2(PVal: WordBool); safecall;
    function  Get_Height2: Double; safecall;
    procedure Set_Height2(PVal: Double); safecall;
    function  Get_WidthFactor2: Double; safecall;
    procedure Set_WidthFactor2(PVal: Double); safecall;
    function  Get_Step2: Double; safecall;
    procedure Set_Step2(PVal: Double); safecall;
    function  Get_EnableLine3: WordBool; safecall;
    procedure Set_EnableLine3(PVal: WordBool); safecall;
    function  Get_Height3: Double; safecall;
    procedure Set_Height3(PVal: Double); safecall;
    function  Get_WidthFactor3: Double; safecall;
    procedure Set_WidthFactor3(PVal: Double); safecall;
    function  Get_Step3: Double; safecall;
    procedure Set_Step3(PVal: Double); safecall;
    function  Get_Font: ITextFont; safecall;
    function  Get_Tabulators: ITabulators; safecall;
    property Name: WideString read Get_Name write Set_Name;
    property Number: Integer read Get_Number write Set_Number;
    property Step: Double read Get_Step write Set_Step;
    property Align: ksAlignEnum read Get_Align write Set_Align;
    property IndentedLine: Double read Get_IndentedLine write Set_IndentedLine;
    property StepBeforeParagraph: Double read Get_StepBeforeParagraph write Set_StepBeforeParagraph;
    property StepAfterParagraph: Double read Get_StepAfterParagraph write Set_StepAfterParagraph;
    property LeftEdge: Double read Get_LeftEdge write Set_LeftEdge;
    property RightEdge: Double read Get_RightEdge write Set_RightEdge;
    property Extended: WordBool read Get_Extended write Set_Extended;
    property LinesCount: Integer read Get_LinesCount write Set_LinesCount;
    property EnableLine1: WordBool read Get_EnableLine1 write Set_EnableLine1;
    property Height1: Double read Get_Height1 write Set_Height1;
    property WidthFactor1: Double read Get_WidthFactor1 write Set_WidthFactor1;
    property Step1: Double read Get_Step1 write Set_Step1;
    property EnableLine2: WordBool read Get_EnableLine2 write Set_EnableLine2;
    property Height2: Double read Get_Height2 write Set_Height2;
    property WidthFactor2: Double read Get_WidthFactor2 write Set_WidthFactor2;
    property Step2: Double read Get_Step2 write Set_Step2;
    property EnableLine3: WordBool read Get_EnableLine3 write Set_EnableLine3;
    property Height3: Double read Get_Height3 write Set_Height3;
    property WidthFactor3: Double read Get_WidthFactor3 write Set_WidthFactor3;
    property Step3: Double read Get_Step3 write Set_Step3;
    property Font: ITextFont read Get_Font;
    property Tabulators: ITabulators read Get_Tabulators;
  end;

// *********************************************************************//
// DispIntf:  ITextStyleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7EA65CA0-420D-4E1D-8C19-998495C4DA2F}
// *********************************************************************//
  ITextStyleDisp = dispinterface
    ['{7EA65CA0-420D-4E1D-8C19-998495C4DA2F}']
    property Name: WideString dispid 1;
    property Number: Integer dispid 2;
    property Step: Double dispid 3;
    property Align: ksAlignEnum dispid 4;
    property IndentedLine: Double dispid 5;
    property StepBeforeParagraph: Double dispid 6;
    property StepAfterParagraph: Double dispid 7;
    property LeftEdge: Double dispid 8;
    property RightEdge: Double dispid 9;
    property Extended: WordBool dispid 10;
    property LinesCount: Integer dispid 11;
    property EnableLine1: WordBool dispid 12;
    property Height1: Double dispid 13;
    property WidthFactor1: Double dispid 14;
    property Step1: Double dispid 15;
    property EnableLine2: WordBool dispid 16;
    property Height2: Double dispid 17;
    property WidthFactor2: Double dispid 18;
    property Step2: Double dispid 19;
    property EnableLine3: WordBool dispid 20;
    property Height3: Double dispid 21;
    property WidthFactor3: Double dispid 22;
    property Step3: Double dispid 23;
    property Font: ITextFont readonly dispid 24;
    property Tabulators: ITabulators readonly dispid 25;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITextFont
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A6AD008D-58D1-48B5-BD29-E6795289FE4B}
// *********************************************************************//
  ITextFont = interface(IKompasAPIObject)
    ['{A6AD008D-58D1-48B5-BD29-E6795289FE4B}']
    function  Get_FontName: WideString; safecall;
    procedure Set_FontName(const PVal: WideString); safecall;
    function  Get_Height: Double; safecall;
    procedure Set_Height(PVal: Double); safecall;
    function  Get_WidthFactor: Double; safecall;
    procedure Set_WidthFactor(PVal: Double); safecall;
    function  Get_Color: Integer; safecall;
    procedure Set_Color(PVal: Integer); safecall;
    function  Get_Bold: WordBool; safecall;
    procedure Set_Bold(PVal: WordBool); safecall;
    function  Get_Italic: WordBool; safecall;
    procedure Set_Italic(PVal: WordBool); safecall;
    function  Get_Underline: WordBool; safecall;
    procedure Set_Underline(PVal: WordBool); safecall;
    function  Get_TextLineStep: WordBool; safecall;
    procedure Set_TextLineStep(PVal: WordBool); safecall;
    property FontName: WideString read Get_FontName write Set_FontName;
    property Height: Double read Get_Height write Set_Height;
    property WidthFactor: Double read Get_WidthFactor write Set_WidthFactor;
    property Color: Integer read Get_Color write Set_Color;
    property Bold: WordBool read Get_Bold write Set_Bold;
    property Italic: WordBool read Get_Italic write Set_Italic;
    property Underline: WordBool read Get_Underline write Set_Underline;
    property TextLineStep: WordBool read Get_TextLineStep write Set_TextLineStep;
  end;

// *********************************************************************//
// DispIntf:  ITextFontDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A6AD008D-58D1-48B5-BD29-E6795289FE4B}
// *********************************************************************//
  ITextFontDisp = dispinterface
    ['{A6AD008D-58D1-48B5-BD29-E6795289FE4B}']
    property FontName: WideString dispid 1;
    property Height: Double dispid 2;
    property WidthFactor: Double dispid 3;
    property Color: Integer dispid 4;
    property Bold: WordBool dispid 5;
    property Italic: WordBool dispid 6;
    property Underline: WordBool dispid 7;
    property TextLineStep: WordBool dispid 8;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITabulators
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BB66E097-95C7-49B1-B6FD-3506C7758D09}
// *********************************************************************//
  ITabulators = interface(IKompasCollection)
    ['{BB66E097-95C7-49B1-B6FD-3506C7758D09}']
    function  Get_Item(Index: OleVariant): ITabulator; safecall;
    function  Add(Position: Integer): ITabulator; safecall;
    function  Clear: WordBool; safecall;
    property Item[Index: OleVariant]: ITabulator read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ITabulatorsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BB66E097-95C7-49B1-B6FD-3506C7758D09}
// *********************************************************************//
  ITabulatorsDisp = dispinterface
    ['{BB66E097-95C7-49B1-B6FD-3506C7758D09}']
    property Item[Index: OleVariant]: ITabulator readonly dispid 0; default;
    function  Add(Position: Integer): ITabulator; dispid 1;
    function  Clear: WordBool; dispid 2;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITabulator
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2DD73B92-F8C8-49AA-AECD-B75713427FC1}
// *********************************************************************//
  ITabulator = interface(IKompasAPIObject)
    ['{2DD73B92-F8C8-49AA-AECD-B75713427FC1}']
    function  Get_Position: Integer; safecall;
    procedure Set_Position(PVal: Integer); safecall;
    function  Get_Align: ksAlignEnum; safecall;
    procedure Set_Align(PVal: ksAlignEnum); safecall;
    function  Get_Filling: ksTabulatorFillingEnum; safecall;
    procedure Set_Filling(PVal: ksTabulatorFillingEnum); safecall;
    property Position: Integer read Get_Position write Set_Position;
    property Align: ksAlignEnum read Get_Align write Set_Align;
    property Filling: ksTabulatorFillingEnum read Get_Filling write Set_Filling;
  end;

// *********************************************************************//
// DispIntf:  ITabulatorDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2DD73B92-F8C8-49AA-AECD-B75713427FC1}
// *********************************************************************//
  ITabulatorDisp = dispinterface
    ['{2DD73B92-F8C8-49AA-AECD-B75713427FC1}']
    property Position: Integer dispid 1;
    property Align: ksAlignEnum dispid 2;
    property Filling: ksTabulatorFillingEnum dispid 3;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationTuningSections
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {01B1BF6F-B9E3-4E94-99A0-81394FB99B16}
// *********************************************************************//
  ISpecificationTuningSections = interface(IKompasCollection)
    ['{01B1BF6F-B9E3-4E94-99A0-81394FB99B16}']
    function  Get_Item(Index: OleVariant): ISpecificationTuningSection; safecall;
    property Item[Index: OleVariant]: ISpecificationTuningSection read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationTuningSectionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {01B1BF6F-B9E3-4E94-99A0-81394FB99B16}
// *********************************************************************//
  ISpecificationTuningSectionsDisp = dispinterface
    ['{01B1BF6F-B9E3-4E94-99A0-81394FB99B16}']
    property Item[Index: OleVariant]: ISpecificationTuningSection readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationTuningSection
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E68AA413-CC35-450D-BF35-0F294F59B08C}
// *********************************************************************//
  ISpecificationTuningSection = interface(IKompasAPIObject)
    ['{E68AA413-CC35-450D-BF35-0F294F59B08C}']
    function  Get_Number: Integer; safecall;
    function  Get_SubsectionOn: WordBool; safecall;
    procedure Set_SubsectionOn(PVal: WordBool); safecall;
    function  Get_AttachGeometry: WordBool; safecall;
    procedure Set_AttachGeometry(PVal: WordBool); safecall;
    function  Get_PutPosition: WordBool; safecall;
    procedure Set_PutPosition(PVal: WordBool); safecall;
    function  Get_SortObjects: WordBool; safecall;
    procedure Set_SortObjects(PVal: WordBool); safecall;
    function  Get_FirstOnSheet: WordBool; safecall;
    procedure Set_FirstOnSheet(PVal: WordBool); safecall;
    function  Get_ReserveStringCount: Smallint; safecall;
    procedure Set_ReserveStringCount(PVal: Smallint); safecall;
    function  Get_Subsections: ISpecificationSubsections; safecall;
    function  Get_UseAdditionalBlocks: WordBool; safecall;
    procedure Set_UseAdditionalBlocks(PVal: WordBool); safecall;
    function  Get_AdditionalBlocks: IAdditionalBlockTunings; safecall;
    property Number: Integer read Get_Number;
    property SubsectionOn: WordBool read Get_SubsectionOn write Set_SubsectionOn;
    property AttachGeometry: WordBool read Get_AttachGeometry write Set_AttachGeometry;
    property PutPosition: WordBool read Get_PutPosition write Set_PutPosition;
    property SortObjects: WordBool read Get_SortObjects write Set_SortObjects;
    property FirstOnSheet: WordBool read Get_FirstOnSheet write Set_FirstOnSheet;
    property ReserveStringCount: Smallint read Get_ReserveStringCount write Set_ReserveStringCount;
    property Subsections: ISpecificationSubsections read Get_Subsections;
    property UseAdditionalBlocks: WordBool read Get_UseAdditionalBlocks write Set_UseAdditionalBlocks;
    property AdditionalBlocks: IAdditionalBlockTunings read Get_AdditionalBlocks;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationTuningSectionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E68AA413-CC35-450D-BF35-0F294F59B08C}
// *********************************************************************//
  ISpecificationTuningSectionDisp = dispinterface
    ['{E68AA413-CC35-450D-BF35-0F294F59B08C}']
    property Number: Integer readonly dispid 1;
    property SubsectionOn: WordBool dispid 2;
    property AttachGeometry: WordBool dispid 3;
    property PutPosition: WordBool dispid 4;
    property SortObjects: WordBool dispid 5;
    property FirstOnSheet: WordBool dispid 6;
    property ReserveStringCount: Smallint dispid 7;
    property Subsections: ISpecificationSubsections readonly dispid 8;
    property UseAdditionalBlocks: WordBool dispid 9;
    property AdditionalBlocks: IAdditionalBlockTunings readonly dispid 10;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationSubsections
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {56532CB4-BD3F-442C-AFA4-0E6BEB677E61}
// *********************************************************************//
  ISpecificationSubsections = interface(IKompasCollection)
    ['{56532CB4-BD3F-442C-AFA4-0E6BEB677E61}']
    function  Get_Item(Index: OleVariant): ISpecificationSubsection; safecall;
    function  Add(const Name: WideString; Number: Smallint): ISpecificationSubsection; safecall;
    property Item[Index: OleVariant]: ISpecificationSubsection read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationSubsectionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {56532CB4-BD3F-442C-AFA4-0E6BEB677E61}
// *********************************************************************//
  ISpecificationSubsectionsDisp = dispinterface
    ['{56532CB4-BD3F-442C-AFA4-0E6BEB677E61}']
    property Item[Index: OleVariant]: ISpecificationSubsection readonly dispid 0; default;
    function  Add(const Name: WideString; Number: Smallint): ISpecificationSubsection; dispid 1;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationSubsection
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7F0E5F63-815C-46E5-B99E-C24244566C00}
// *********************************************************************//
  ISpecificationSubsection = interface(IKompasAPIObject)
    ['{7F0E5F63-815C-46E5-B99E-C24244566C00}']
    function  Get_Name: WideString; safecall;
    function  Get_Number: Smallint; safecall;
    function  Change(const Name: WideString; Number: Smallint): WordBool; safecall;
    function  Delete: WordBool; safecall;
    property Name: WideString read Get_Name;
    property Number: Smallint read Get_Number;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationSubsectionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7F0E5F63-815C-46E5-B99E-C24244566C00}
// *********************************************************************//
  ISpecificationSubsectionDisp = dispinterface
    ['{7F0E5F63-815C-46E5-B99E-C24244566C00}']
    property Name: WideString readonly dispid 1;
    property Number: Smallint readonly dispid 2;
    function  Change(const Name: WideString; Number: Smallint): WordBool; dispid 3;
    function  Delete: WordBool; dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAdditionalBlockTunings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8910CC92-AC76-4837-AB7A-5FD3C7B74728}
// *********************************************************************//
  IAdditionalBlockTunings = interface(IKompasCollection)
    ['{8910CC92-AC76-4837-AB7A-5FD3C7B74728}']
    function  Get_Item(Index: OleVariant): IAdditionalBlockTuning; safecall;
    property Item[Index: OleVariant]: IAdditionalBlockTuning read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IAdditionalBlockTuningsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8910CC92-AC76-4837-AB7A-5FD3C7B74728}
// *********************************************************************//
  IAdditionalBlockTuningsDisp = dispinterface
    ['{8910CC92-AC76-4837-AB7A-5FD3C7B74728}']
    property Item[Index: OleVariant]: IAdditionalBlockTuning readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAdditionalBlockTuning
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9CD5B016-9CE9-4E0A-8902-196D11360536}
// *********************************************************************//
  IAdditionalBlockTuning = interface(IKompasAPIObject)
    ['{9CD5B016-9CE9-4E0A-8902-196D11360536}']
    function  Get_Number: Integer; safecall;
    function  Get_DocumentName: WideString; safecall;
    procedure Set_DocumentName(const PVal: WideString); safecall;
    function  Get_Use: WordBool; safecall;
    procedure Set_Use(PVal: WordBool); safecall;
    function  Get_FirstOnSheet: WordBool; safecall;
    procedure Set_FirstOnSheet(PVal: WordBool); safecall;
    function  Get_Sections: IAdditionalBlockSectionTunings; safecall;
    property Number: Integer read Get_Number;
    property DocumentName: WideString read Get_DocumentName write Set_DocumentName;
    property Use: WordBool read Get_Use write Set_Use;
    property FirstOnSheet: WordBool read Get_FirstOnSheet write Set_FirstOnSheet;
    property Sections: IAdditionalBlockSectionTunings read Get_Sections;
  end;

// *********************************************************************//
// DispIntf:  IAdditionalBlockTuningDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9CD5B016-9CE9-4E0A-8902-196D11360536}
// *********************************************************************//
  IAdditionalBlockTuningDisp = dispinterface
    ['{9CD5B016-9CE9-4E0A-8902-196D11360536}']
    property Number: Integer readonly dispid 1;
    property DocumentName: WideString dispid 2;
    property Use: WordBool dispid 3;
    property FirstOnSheet: WordBool dispid 4;
    property Sections: IAdditionalBlockSectionTunings readonly dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAdditionalBlockSectionTunings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {43EFA203-F956-43D6-B603-87807DDEFD0A}
// *********************************************************************//
  IAdditionalBlockSectionTunings = interface(IKompasCollection)
    ['{43EFA203-F956-43D6-B603-87807DDEFD0A}']
    function  Get_Item(Index: OleVariant): IAdditionalBlockSectionTuning; safecall;
    property Item[Index: OleVariant]: IAdditionalBlockSectionTuning read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IAdditionalBlockSectionTuningsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {43EFA203-F956-43D6-B603-87807DDEFD0A}
// *********************************************************************//
  IAdditionalBlockSectionTuningsDisp = dispinterface
    ['{43EFA203-F956-43D6-B603-87807DDEFD0A}']
    property Item[Index: OleVariant]: IAdditionalBlockSectionTuning readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAdditionalBlockSectionTuning
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E04B8464-C8D6-4BAC-99B5-AE79EBBDB205}
// *********************************************************************//
  IAdditionalBlockSectionTuning = interface(IKompasAPIObject)
    ['{E04B8464-C8D6-4BAC-99B5-AE79EBBDB205}']
    function  Get_Number: Integer; safecall;
    function  Get_Use: WordBool; safecall;
    procedure Set_Use(PVal: WordBool); safecall;
    property Number: Integer read Get_Number;
    property Use: WordBool read Get_Use write Set_Use;
  end;

// *********************************************************************//
// DispIntf:  IAdditionalBlockSectionTuningDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E04B8464-C8D6-4BAC-99B5-AE79EBBDB205}
// *********************************************************************//
  IAdditionalBlockSectionTuningDisp = dispinterface
    ['{E04B8464-C8D6-4BAC-99B5-AE79EBBDB205}']
    property Number: Integer readonly dispid 1;
    property Use: WordBool dispid 2;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetFormat
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9CDE694-4C33-4375-A6F6-AE94DC759510}
// *********************************************************************//
  ISheetFormat = interface(IKompasAPIObject)
    ['{B9CDE694-4C33-4375-A6F6-AE94DC759510}']
    function  Get_Format: ksDocumentFormatEnum; safecall;
    procedure Set_Format(PVal: ksDocumentFormatEnum); safecall;
    function  Get_FormatMultiplicity: Integer; safecall;
    procedure Set_FormatMultiplicity(PVal: Integer); safecall;
    function  Get_VerticalOrientation: WordBool; safecall;
    procedure Set_VerticalOrientation(PVal: WordBool); safecall;
    function  Get_FormatWidth: Double; safecall;
    procedure Set_FormatWidth(PVal: Double); safecall;
    function  Get_FormatHeight: Double; safecall;
    procedure Set_FormatHeight(PVal: Double); safecall;
    property Format: ksDocumentFormatEnum read Get_Format write Set_Format;
    property FormatMultiplicity: Integer read Get_FormatMultiplicity write Set_FormatMultiplicity;
    property VerticalOrientation: WordBool read Get_VerticalOrientation write Set_VerticalOrientation;
    property FormatWidth: Double read Get_FormatWidth write Set_FormatWidth;
    property FormatHeight: Double read Get_FormatHeight write Set_FormatHeight;
  end;

// *********************************************************************//
// DispIntf:  ISheetFormatDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9CDE694-4C33-4375-A6F6-AE94DC759510}
// *********************************************************************//
  ISheetFormatDisp = dispinterface
    ['{B9CDE694-4C33-4375-A6F6-AE94DC759510}']
    property Format: ksDocumentFormatEnum dispid 1;
    property FormatMultiplicity: Integer dispid 2;
    property VerticalOrientation: WordBool dispid 3;
    property FormatWidth: Double dispid 4;
    property FormatHeight: Double dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationColumnStyles
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {41529A95-51F0-44B0-9D55-5753BCEB23BC}
// *********************************************************************//
  ISpecificationColumnStyles = interface(IKompasCollection)
    ['{41529A95-51F0-44B0-9D55-5753BCEB23BC}']
    function  Get_Item(Index: OleVariant): ISpecificationColumnStyle; safecall;
    property Item[Index: OleVariant]: ISpecificationColumnStyle read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationColumnStylesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {41529A95-51F0-44B0-9D55-5753BCEB23BC}
// *********************************************************************//
  ISpecificationColumnStylesDisp = dispinterface
    ['{41529A95-51F0-44B0-9D55-5753BCEB23BC}']
    property Item[Index: OleVariant]: ISpecificationColumnStyle readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationColumnStyle
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {16839CAA-3AFB-49A4-A19A-C61963967649}
// *********************************************************************//
  ISpecificationColumnStyle = interface(IKompasAPIObject)
    ['{16839CAA-3AFB-49A4-A19A-C61963967649}']
    function  Get_Name: WideString; safecall;
    function  Get_ColumnType: ksSpecificationColumnTypeEnum; safecall;
    function  Get_Number: Integer; safecall;
    function  Get_Edit: WordBool; safecall;
    function  Get_CalculateSum: WordBool; safecall;
    function  Get_MultiplyToCount: WordBool; safecall;
    function  Get_UseForSectionTitle: WordBool; safecall;
    function  Get_TextDown: WordBool; safecall;
    function  Get_StampLinkID: Integer; safecall;
    function  Get_ValueType: ksValueTypeEnum; safecall;
    function  Get_AttributeLibraryName: WideString; safecall;
    function  Get_AttributeKey1: Integer; safecall;
    function  Get_AttributeKey2: Integer; safecall;
    function  Get_AttributeKey3: Integer; safecall;
    function  Get_AttributeKey4: Integer; safecall;
    function  Get_MinValue: Double; safecall;
    function  Get_MaxValue: Double; safecall;
    function  Get_UseIn3D: WordBool; safecall;
    property Name: WideString read Get_Name;
    property ColumnType: ksSpecificationColumnTypeEnum read Get_ColumnType;
    property Number: Integer read Get_Number;
    property Edit: WordBool read Get_Edit;
    property CalculateSum: WordBool read Get_CalculateSum;
    property MultiplyToCount: WordBool read Get_MultiplyToCount;
    property UseForSectionTitle: WordBool read Get_UseForSectionTitle;
    property TextDown: WordBool read Get_TextDown;
    property StampLinkID: Integer read Get_StampLinkID;
    property ValueType: ksValueTypeEnum read Get_ValueType;
    property AttributeLibraryName: WideString read Get_AttributeLibraryName;
    property AttributeKey1: Integer read Get_AttributeKey1;
    property AttributeKey2: Integer read Get_AttributeKey2;
    property AttributeKey3: Integer read Get_AttributeKey3;
    property AttributeKey4: Integer read Get_AttributeKey4;
    property MinValue: Double read Get_MinValue;
    property MaxValue: Double read Get_MaxValue;
    property UseIn3D: WordBool read Get_UseIn3D;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationColumnStyleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {16839CAA-3AFB-49A4-A19A-C61963967649}
// *********************************************************************//
  ISpecificationColumnStyleDisp = dispinterface
    ['{16839CAA-3AFB-49A4-A19A-C61963967649}']
    property Name: WideString readonly dispid 1;
    property ColumnType: ksSpecificationColumnTypeEnum readonly dispid 2;
    property Number: Integer readonly dispid 3;
    property Edit: WordBool readonly dispid 4;
    property CalculateSum: WordBool readonly dispid 5;
    property MultiplyToCount: WordBool readonly dispid 6;
    property UseForSectionTitle: WordBool readonly dispid 7;
    property TextDown: WordBool readonly dispid 8;
    property StampLinkID: Integer readonly dispid 9;
    property ValueType: ksValueTypeEnum readonly dispid 10;
    property AttributeLibraryName: WideString readonly dispid 11;
    property AttributeKey1: Integer readonly dispid 12;
    property AttributeKey2: Integer readonly dispid 13;
    property AttributeKey3: Integer readonly dispid 14;
    property AttributeKey4: Integer readonly dispid 15;
    property MinValue: Double readonly dispid 16;
    property MaxValue: Double readonly dispid 17;
    property UseIn3D: WordBool readonly dispid 18;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationSectionStyles
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {24AE8484-F4F4-4059-AFC7-9492A64C88E8}
// *********************************************************************//
  ISpecificationSectionStyles = interface(IKompasCollection)
    ['{24AE8484-F4F4-4059-AFC7-9492A64C88E8}']
    function  Get_Item(Index: OleVariant): ISpecificationSectionStyle; safecall;
    property Item[Index: OleVariant]: ISpecificationSectionStyle read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationSectionStylesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {24AE8484-F4F4-4059-AFC7-9492A64C88E8}
// *********************************************************************//
  ISpecificationSectionStylesDisp = dispinterface
    ['{24AE8484-F4F4-4059-AFC7-9492A64C88E8}']
    property Item[Index: OleVariant]: ISpecificationSectionStyle readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationSectionStyle
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4B61FC7F-4826-4B58-8CCB-7D459AD0BE7B}
// *********************************************************************//
  ISpecificationSectionStyle = interface(IKompasAPIObject)
    ['{4B61FC7F-4826-4B58-8CCB-7D459AD0BE7B}']
    function  Get_Name: WideString; safecall;
    function  Get_Number: Integer; safecall;
    function  Get_SortColumnType: ksSpecificationColumnTypeEnum; safecall;
    function  Get_SortColumnNumber: Integer; safecall;
    function  Get_FillDataFromStamp: WordBool; safecall;
    function  Get_SortType: ksSortTypeEnum; safecall;
    function  Get_Columns: ISpecificationColumnStyles; safecall;
    function  Get_AdditionalColumns: ISpecificationColumnStyles; safecall;
    function  Get_AdditionalBlocks: IAdditionalBlockStyles; safecall;
    property Name: WideString read Get_Name;
    property Number: Integer read Get_Number;
    property SortColumnType: ksSpecificationColumnTypeEnum read Get_SortColumnType;
    property SortColumnNumber: Integer read Get_SortColumnNumber;
    property FillDataFromStamp: WordBool read Get_FillDataFromStamp;
    property SortType: ksSortTypeEnum read Get_SortType;
    property Columns: ISpecificationColumnStyles read Get_Columns;
    property AdditionalColumns: ISpecificationColumnStyles read Get_AdditionalColumns;
    property AdditionalBlocks: IAdditionalBlockStyles read Get_AdditionalBlocks;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationSectionStyleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4B61FC7F-4826-4B58-8CCB-7D459AD0BE7B}
// *********************************************************************//
  ISpecificationSectionStyleDisp = dispinterface
    ['{4B61FC7F-4826-4B58-8CCB-7D459AD0BE7B}']
    property Name: WideString readonly dispid 1;
    property Number: Integer readonly dispid 2;
    property SortColumnType: ksSpecificationColumnTypeEnum readonly dispid 3;
    property SortColumnNumber: Integer readonly dispid 4;
    property FillDataFromStamp: WordBool readonly dispid 5;
    property SortType: ksSortTypeEnum readonly dispid 6;
    property Columns: ISpecificationColumnStyles readonly dispid 7;
    property AdditionalColumns: ISpecificationColumnStyles readonly dispid 8;
    property AdditionalBlocks: IAdditionalBlockStyles readonly dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAdditionalBlockStyles
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {90E2FBEC-A56F-423C-B89F-479673EDD895}
// *********************************************************************//
  IAdditionalBlockStyles = interface(IKompasCollection)
    ['{90E2FBEC-A56F-423C-B89F-479673EDD895}']
    function  Get_Item(Index: OleVariant): IAdditionalBlockStyle; safecall;
    property Item[Index: OleVariant]: IAdditionalBlockStyle read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IAdditionalBlockStylesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {90E2FBEC-A56F-423C-B89F-479673EDD895}
// *********************************************************************//
  IAdditionalBlockStylesDisp = dispinterface
    ['{90E2FBEC-A56F-423C-B89F-479673EDD895}']
    property Item[Index: OleVariant]: IAdditionalBlockStyle readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAdditionalBlockStyle
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B2A43FA6-9BCE-4468-9662-811A6255E220}
// *********************************************************************//
  IAdditionalBlockStyle = interface(IKompasAPIObject)
    ['{B2A43FA6-9BCE-4468-9662-811A6255E220}']
    function  Get_Name: WideString; safecall;
    function  Get_Number: Integer; safecall;
    property Name: WideString read Get_Name;
    property Number: Integer read Get_Number;
  end;

// *********************************************************************//
// DispIntf:  IAdditionalBlockStyleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B2A43FA6-9BCE-4468-9662-811A6255E220}
// *********************************************************************//
  IAdditionalBlockStyleDisp = dispinterface
    ['{B2A43FA6-9BCE-4468-9662-811A6255E220}']
    property Name: WideString readonly dispid 1;
    property Number: Integer readonly dispid 2;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationBaseObjects
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B2B97D19-3A0B-4C9F-A6AC-DEFFAFE0D1C2}
// *********************************************************************//
  ISpecificationBaseObjects = interface(IKompasCollection)
    ['{B2B97D19-3A0B-4C9F-A6AC-DEFFAFE0D1C2}']
    function  Get_Item(Index: OleVariant): ISpecificationBaseObject; safecall;
    function  Add(SectionNumb: Integer; AttrNumb: Double): ISpecificationBaseObject; safecall;
    function  GetSpecificationObjectsForGeom(PGeom: OleVariant; Equal: WordBool; 
                                             SectionNumb: Integer; AttrNumb: Double): OleVariant; safecall;
    property Item[Index: OleVariant]: ISpecificationBaseObject read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationBaseObjectsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B2B97D19-3A0B-4C9F-A6AC-DEFFAFE0D1C2}
// *********************************************************************//
  ISpecificationBaseObjectsDisp = dispinterface
    ['{B2B97D19-3A0B-4C9F-A6AC-DEFFAFE0D1C2}']
    property Item[Index: OleVariant]: ISpecificationBaseObject readonly dispid 0; default;
    function  Add(SectionNumb: Integer; AttrNumb: Double): ISpecificationBaseObject; dispid 1;
    function  GetSpecificationObjectsForGeom(PGeom: OleVariant; Equal: WordBool; 
                                             SectionNumb: Integer; AttrNumb: Double): OleVariant; dispid 2;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {72EB4E8E-7952-4B36-852B-4816B7B5AFEE}
// *********************************************************************//
  ISpecificationObject = interface(IKompasAPIObject)
    ['{72EB4E8E-7952-4B36-852B-4816B7B5AFEE}']
    function  Get_ObjectType: ksSpecificationObjectTypeEnum; safecall;
    function  Get_Section: Integer; safecall;
    function  Get_Subsection: Integer; safecall;
    procedure Set_Subsection(PVal: Integer); safecall;
    function  Get_AdditionalSection: Integer; safecall;
    procedure Set_AdditionalSection(PVal: Integer); safecall;
    function  Get_AdditionalBlock: Integer; safecall;
    procedure Set_AdditionalBlock(PVal: Integer); safecall;
    function  Get_NestedSection: Integer; safecall;
    procedure Set_NestedSection(PVal: Integer); safecall;
    function  Get_NestedBlock: Integer; safecall;
    procedure Set_NestedBlock(PVal: Integer); safecall;
    function  Get_BlockNumberByIndex(Val: Integer): Integer; safecall;
    function  Get_UniqueNumber: Double; safecall;
    function  Get_State: ksSpecificationObjectStateEnum; safecall;
    function  Get_FirstOnSheet: WordBool; safecall;
    procedure Set_FirstOnSheet(PVal: WordBool); safecall;
    function  Get_IncrementPosition: WordBool; safecall;
    procedure Set_IncrementPosition(PVal: WordBool); safecall;
    function  Get_Columns: ISpecificationColumns; safecall;
    function  Get_AdditionalColumns: ISpecificationColumns; safecall;
    function  Get_AttachedDocuments: IAttachedDocuments; safecall;
    function  Update: WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Edit: WordBool; safecall;
    property ObjectType: ksSpecificationObjectTypeEnum read Get_ObjectType;
    property Section: Integer read Get_Section;
    property Subsection: Integer read Get_Subsection write Set_Subsection;
    property AdditionalSection: Integer read Get_AdditionalSection write Set_AdditionalSection;
    property AdditionalBlock: Integer read Get_AdditionalBlock write Set_AdditionalBlock;
    property NestedSection: Integer read Get_NestedSection write Set_NestedSection;
    property NestedBlock: Integer read Get_NestedBlock write Set_NestedBlock;
    property BlockNumberByIndex[Val: Integer]: Integer read Get_BlockNumberByIndex;
    property UniqueNumber: Double read Get_UniqueNumber;
    property State: ksSpecificationObjectStateEnum read Get_State;
    property FirstOnSheet: WordBool read Get_FirstOnSheet write Set_FirstOnSheet;
    property IncrementPosition: WordBool read Get_IncrementPosition write Set_IncrementPosition;
    property Columns: ISpecificationColumns read Get_Columns;
    property AdditionalColumns: ISpecificationColumns read Get_AdditionalColumns;
    property AttachedDocuments: IAttachedDocuments read Get_AttachedDocuments;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {72EB4E8E-7952-4B36-852B-4816B7B5AFEE}
// *********************************************************************//
  ISpecificationObjectDisp = dispinterface
    ['{72EB4E8E-7952-4B36-852B-4816B7B5AFEE}']
    property ObjectType: ksSpecificationObjectTypeEnum readonly dispid 100;
    property Section: Integer readonly dispid 101;
    property Subsection: Integer dispid 102;
    property AdditionalSection: Integer dispid 103;
    property AdditionalBlock: Integer dispid 104;
    property NestedSection: Integer dispid 105;
    property NestedBlock: Integer dispid 106;
    property BlockNumberByIndex[Val: Integer]: Integer readonly dispid 107;
    property UniqueNumber: Double readonly dispid 108;
    property State: ksSpecificationObjectStateEnum readonly dispid 109;
    property FirstOnSheet: WordBool dispid 110;
    property IncrementPosition: WordBool dispid 111;
    property Columns: ISpecificationColumns readonly dispid 112;
    property AdditionalColumns: ISpecificationColumns readonly dispid 113;
    property AttachedDocuments: IAttachedDocuments readonly dispid 114;
    function  Update: WordBool; dispid 115;
    function  Delete: WordBool; dispid 116;
    function  Edit: WordBool; dispid 117;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationBaseObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {49994ED8-96BA-4D9D-B642-5F0F1E3FED16}
// *********************************************************************//
  ISpecificationBaseObject = interface(ISpecificationObject)
    ['{49994ED8-96BA-4D9D-B642-5F0F1E3FED16}']
    function  Get_Draw: WordBool; safecall;
    procedure Set_Draw(PVal: WordBool); safecall;
    function  Get_DrawPosition: WordBool; safecall;
    procedure Set_DrawPosition(PVal: WordBool); safecall;
    function  Get_Performance: WordBool; safecall;
    procedure Set_Performance(PVal: WordBool); safecall;
    function  Get_CommentObjects: ISpecificationCommentObjects; safecall;
    function  Get_Documents: OleVariant; safecall;
    function  Get_AttributeNumber: Double; safecall;
    procedure Set_AttributeNumber(PVal: Double); safecall;
    function  Get_SummaryCount(ColumnTypeNumber: Integer; BlockNumber: Integer): Double; safecall;
    function  SetMaterial(const Material: WideString; Density: Double): WordBool; safecall;
    function  Get_Geometry: OleVariant; safecall;
    procedure Set_Geometry(PVal: OleVariant); safecall;
    function  IncludeGeometry(PVal: OleVariant; FillText: WordBool): WordBool; safecall;
    function  ClearGeometry(ClearGeometry: WordBool; ClearLeaders: WordBool): WordBool; safecall;
    property Draw: WordBool read Get_Draw write Set_Draw;
    property DrawPosition: WordBool read Get_DrawPosition write Set_DrawPosition;
    property Performance: WordBool read Get_Performance write Set_Performance;
    property CommentObjects: ISpecificationCommentObjects read Get_CommentObjects;
    property Documents: OleVariant read Get_Documents;
    property AttributeNumber: Double read Get_AttributeNumber write Set_AttributeNumber;
    property SummaryCount[ColumnTypeNumber: Integer; BlockNumber: Integer]: Double read Get_SummaryCount;
    property Geometry: OleVariant read Get_Geometry write Set_Geometry;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationBaseObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {49994ED8-96BA-4D9D-B642-5F0F1E3FED16}
// *********************************************************************//
  ISpecificationBaseObjectDisp = dispinterface
    ['{49994ED8-96BA-4D9D-B642-5F0F1E3FED16}']
    property Draw: WordBool dispid 1;
    property DrawPosition: WordBool dispid 2;
    property Performance: WordBool dispid 3;
    property CommentObjects: ISpecificationCommentObjects readonly dispid 4;
    property Documents: OleVariant readonly dispid 5;
    property AttributeNumber: Double dispid 6;
    property SummaryCount[ColumnTypeNumber: Integer; BlockNumber: Integer]: Double readonly dispid 7;
    function  SetMaterial(const Material: WideString; Density: Double): WordBool; dispid 8;
    property Geometry: OleVariant dispid 9;
    function  IncludeGeometry(PVal: OleVariant; FillText: WordBool): WordBool; dispid 10;
    function  ClearGeometry(ClearGeometry: WordBool; ClearLeaders: WordBool): WordBool; dispid 11;
    property ObjectType: ksSpecificationObjectTypeEnum readonly dispid 100;
    property Section: Integer readonly dispid 101;
    property Subsection: Integer dispid 102;
    property AdditionalSection: Integer dispid 103;
    property AdditionalBlock: Integer dispid 104;
    property NestedSection: Integer dispid 105;
    property NestedBlock: Integer dispid 106;
    property BlockNumberByIndex[Val: Integer]: Integer readonly dispid 107;
    property UniqueNumber: Double readonly dispid 108;
    property State: ksSpecificationObjectStateEnum readonly dispid 109;
    property FirstOnSheet: WordBool dispid 110;
    property IncrementPosition: WordBool dispid 111;
    property Columns: ISpecificationColumns readonly dispid 112;
    property AdditionalColumns: ISpecificationColumns readonly dispid 113;
    property AttachedDocuments: IAttachedDocuments readonly dispid 114;
    function  Update: WordBool; dispid 115;
    function  Delete: WordBool; dispid 116;
    function  Edit: WordBool; dispid 117;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationColumns
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9F44BF03-DE25-4DDE-ADA0-92384199C100}
// *********************************************************************//
  ISpecificationColumns = interface(IKompasCollection)
    ['{9F44BF03-DE25-4DDE-ADA0-92384199C100}']
    function  Get_Item(Index: OleVariant): ISpecificationColumn; safecall;
    function  Get_Column(ColumnType: ksSpecificationColumnTypeEnum; ColumnNumber: Integer; 
                         BlockNumber: Integer): ISpecificationColumn; safecall;
    property Item[Index: OleVariant]: ISpecificationColumn read Get_Item; default;
    property Column[ColumnType: ksSpecificationColumnTypeEnum; ColumnNumber: Integer; 
                    BlockNumber: Integer]: ISpecificationColumn read Get_Column;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationColumnsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9F44BF03-DE25-4DDE-ADA0-92384199C100}
// *********************************************************************//
  ISpecificationColumnsDisp = dispinterface
    ['{9F44BF03-DE25-4DDE-ADA0-92384199C100}']
    property Item[Index: OleVariant]: ISpecificationColumn readonly dispid 0; default;
    property Column[ColumnType: ksSpecificationColumnTypeEnum; ColumnNumber: Integer; 
                    BlockNumber: Integer]: ISpecificationColumn readonly dispid 1;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationColumn
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3ECFB777-2645-42B5-A6ED-111688433B26}
// *********************************************************************//
  ISpecificationColumn = interface(IKompasAPIObject)
    ['{3ECFB777-2645-42B5-A6ED-111688433B26}']
    function  Get_ColumnType: ksSpecificationColumnTypeEnum; safecall;
    function  Get_ColumnTypeNumber: Integer; safecall;
    function  Get_BlockNumber: Integer; safecall;
    function  Get_Number: Integer; safecall;
    function  Get_ValueType: ksValueTypeEnum; safecall;
    function  Get_ColumnItems: ISpecificationColumnItems; safecall;
    function  Get_AttributeNumber: Double; safecall;
    procedure Set_AttributeNumber(PVal: Double); safecall;
    function  Get_Text: IText; safecall;
    property ColumnType: ksSpecificationColumnTypeEnum read Get_ColumnType;
    property ColumnTypeNumber: Integer read Get_ColumnTypeNumber;
    property BlockNumber: Integer read Get_BlockNumber;
    property Number: Integer read Get_Number;
    property ValueType: ksValueTypeEnum read Get_ValueType;
    property ColumnItems: ISpecificationColumnItems read Get_ColumnItems;
    property AttributeNumber: Double read Get_AttributeNumber write Set_AttributeNumber;
    property Text: IText read Get_Text;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationColumnDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3ECFB777-2645-42B5-A6ED-111688433B26}
// *********************************************************************//
  ISpecificationColumnDisp = dispinterface
    ['{3ECFB777-2645-42B5-A6ED-111688433B26}']
    property ColumnType: ksSpecificationColumnTypeEnum readonly dispid 1;
    property ColumnTypeNumber: Integer readonly dispid 2;
    property BlockNumber: Integer readonly dispid 3;
    property Number: Integer readonly dispid 4;
    property ValueType: ksValueTypeEnum readonly dispid 5;
    property ColumnItems: ISpecificationColumnItems readonly dispid 6;
    property AttributeNumber: Double dispid 7;
    property Text: IText readonly dispid 8;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationColumnItems
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F4BAB79A-8A35-44D5-BE44-C566E444F342}
// *********************************************************************//
  ISpecificationColumnItems = interface(IKompasCollection)
    ['{F4BAB79A-8A35-44D5-BE44-C566E444F342}']
    function  Get_Item(Index: OleVariant): ISpecificationColumnItem; safecall;
    property Item[Index: OleVariant]: ISpecificationColumnItem read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationColumnItemsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F4BAB79A-8A35-44D5-BE44-C566E444F342}
// *********************************************************************//
  ISpecificationColumnItemsDisp = dispinterface
    ['{F4BAB79A-8A35-44D5-BE44-C566E444F342}']
    property Item[Index: OleVariant]: ISpecificationColumnItem readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationColumnItem
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2BABDD01-EACA-4137-9749-25B8C5E230EE}
// *********************************************************************//
  ISpecificationColumnItem = interface(IKompasAPIObject)
    ['{2BABDD01-EACA-4137-9749-25B8C5E230EE}']
    function  Get_ValueType: ksValueTypeEnum; safecall;
    function  Get_Key: Smallint; safecall;
    procedure Set_Key(PVal: Smallint); safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Value: OleVariant; safecall;
    procedure Set_Value(PVal: OleVariant); safecall;
    property ValueType: ksValueTypeEnum read Get_ValueType;
    property Key: Smallint read Get_Key write Set_Key;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Value: OleVariant read Get_Value write Set_Value;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationColumnItemDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2BABDD01-EACA-4137-9749-25B8C5E230EE}
// *********************************************************************//
  ISpecificationColumnItemDisp = dispinterface
    ['{2BABDD01-EACA-4137-9749-25B8C5E230EE}']
    property ValueType: ksValueTypeEnum readonly dispid 1;
    property Key: Smallint dispid 2;
    property Visible: WordBool dispid 3;
    property Value: OleVariant dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IText
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {99B840FC-0150-4DAD-BC0E-AD481BAAB8C2}
// *********************************************************************//
  IText = interface(IKompasAPIObject)
    ['{99B840FC-0150-4DAD-BC0E-AD481BAAB8C2}']
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    function  Get_TextLines: OleVariant; safecall;
    function  Get_Count: Integer; safecall;
    function  Get_TextLine(Index: Integer): ITextLine; safecall;
    function  Add: ITextLine; safecall;
    function  AddBefore(Index: Integer): ITextLine; safecall;
    function  Get_Str: WideString; safecall;
    procedure Set_Str(const PVal: WideString); safecall;
    function  Clear: WordBool; safecall;
    function  AddTextLine(Type_: ksTextLineType; const FileName: WideString): ITextLine; safecall;
    function  AddTextLineBefore(Type_: ksTextLineType; Index: Integer; const FileName: WideString): ITextLine; safecall;
    function  Replace(const SrcText: WideString; const NewText: WideString; Case_: WordBool; 
                      WordOnly: WordBool; ReplaceAll: WordBool): WordBool; safecall;
    function  Assign_(const Other: IText): WordBool; safecall;
    property Style: Integer read Get_Style write Set_Style;
    property TextLines: OleVariant read Get_TextLines;
    property Count: Integer read Get_Count;
    property TextLine[Index: Integer]: ITextLine read Get_TextLine;
    property Str: WideString read Get_Str write Set_Str;
  end;

// *********************************************************************//
// DispIntf:  ITextDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {99B840FC-0150-4DAD-BC0E-AD481BAAB8C2}
// *********************************************************************//
  ITextDisp = dispinterface
    ['{99B840FC-0150-4DAD-BC0E-AD481BAAB8C2}']
    property Style: Integer dispid 2001;
    property TextLines: OleVariant readonly dispid 2002;
    property Count: Integer readonly dispid 2003;
    property TextLine[Index: Integer]: ITextLine readonly dispid 2004;
    function  Add: ITextLine; dispid 2005;
    function  AddBefore(Index: Integer): ITextLine; dispid 2006;
    property Str: WideString dispid 2007;
    function  Clear: WordBool; dispid 2008;
    function  AddTextLine(Type_: ksTextLineType; const FileName: WideString): ITextLine; dispid 2009;
    function  AddTextLineBefore(Type_: ksTextLineType; Index: Integer; const FileName: WideString): ITextLine; dispid 2010;
    function  Replace(const SrcText: WideString; const NewText: WideString; Case_: WordBool; 
                      WordOnly: WordBool; ReplaceAll: WordBool): WordBool; dispid 2011;
    function  Assign_(const Other: IText): WordBool; dispid 2012;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITextLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AAB72FE2-DEA3-4FB6-B0DD-B926249EF67C}
// *********************************************************************//
  ITextLine = interface(IKompasAPIObject)
    ['{AAB72FE2-DEA3-4FB6-B0DD-B926249EF67C}']
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    function  Get_TextItems: OleVariant; safecall;
    function  Get_Count: Integer; safecall;
    function  Get_TextItem(Index: Integer): ITextItem; safecall;
    function  Add: ITextItem; safecall;
    function  AddBefore(Index: Integer): ITextItem; safecall;
    function  Get_Str: WideString; safecall;
    procedure Set_Str(const PVal: WideString); safecall;
    function  Clear: WordBool; safecall;
    function  Get_Step: Double; safecall;
    procedure Set_Step(PVal: Double); safecall;
    function  Get_Align: ksAlignEnum; safecall;
    procedure Set_Align(PVal: ksAlignEnum); safecall;
    function  Get_IndentedLine: Double; safecall;
    procedure Set_IndentedLine(PVal: Double); safecall;
    function  Get_StepBeforeParagraph: Double; safecall;
    procedure Set_StepBeforeParagraph(PVal: Double); safecall;
    function  Get_StepAfterParagraph: Double; safecall;
    procedure Set_StepAfterParagraph(PVal: Double); safecall;
    function  Get_LeftEdge: Double; safecall;
    procedure Set_LeftEdge(PVal: Double); safecall;
    function  Get_RightEdge: Double; safecall;
    procedure Set_RightEdge(PVal: Double); safecall;
    function  Get_Tabulators: ITabulators; safecall;
    function  Get_Level: Integer; safecall;
    procedure Set_Level(Result: Integer); safecall;
    function  Get_Numbering: ksTextNumberingEnum; safecall;
    procedure Set_Numbering(Result: ksTextNumberingEnum); safecall;
    function  Delete: WordBool; safecall;
    function  Get_TextLineType: ksTextLineType; safecall;
    function  Get_TextLineData: IKompasAPIObject; safecall;
    function  Get_NewPage: WordBool; safecall;
    procedure Set_NewPage(Result: WordBool); safecall;
    function  Assign_(const Other: ITextLine): WordBool; safecall;
    property Style: Integer read Get_Style write Set_Style;
    property TextItems: OleVariant read Get_TextItems;
    property Count: Integer read Get_Count;
    property TextItem[Index: Integer]: ITextItem read Get_TextItem;
    property Str: WideString read Get_Str write Set_Str;
    property Step: Double read Get_Step write Set_Step;
    property Align: ksAlignEnum read Get_Align write Set_Align;
    property IndentedLine: Double read Get_IndentedLine write Set_IndentedLine;
    property StepBeforeParagraph: Double read Get_StepBeforeParagraph write Set_StepBeforeParagraph;
    property StepAfterParagraph: Double read Get_StepAfterParagraph write Set_StepAfterParagraph;
    property LeftEdge: Double read Get_LeftEdge write Set_LeftEdge;
    property RightEdge: Double read Get_RightEdge write Set_RightEdge;
    property Tabulators: ITabulators read Get_Tabulators;
    property Level: Integer read Get_Level write Set_Level;
    property Numbering: ksTextNumberingEnum read Get_Numbering write Set_Numbering;
    property TextLineType: ksTextLineType read Get_TextLineType;
    property TextLineData: IKompasAPIObject read Get_TextLineData;
    property NewPage: WordBool read Get_NewPage write Set_NewPage;
  end;

// *********************************************************************//
// DispIntf:  ITextLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AAB72FE2-DEA3-4FB6-B0DD-B926249EF67C}
// *********************************************************************//
  ITextLineDisp = dispinterface
    ['{AAB72FE2-DEA3-4FB6-B0DD-B926249EF67C}']
    property Style: Integer dispid 1;
    property TextItems: OleVariant readonly dispid 2;
    property Count: Integer readonly dispid 3;
    property TextItem[Index: Integer]: ITextItem readonly dispid 4;
    function  Add: ITextItem; dispid 5;
    function  AddBefore(Index: Integer): ITextItem; dispid 6;
    property Str: WideString dispid 7;
    function  Clear: WordBool; dispid 8;
    property Step: Double dispid 9;
    property Align: ksAlignEnum dispid 10;
    property IndentedLine: Double dispid 11;
    property StepBeforeParagraph: Double dispid 12;
    property StepAfterParagraph: Double dispid 13;
    property LeftEdge: Double dispid 14;
    property RightEdge: Double dispid 15;
    property Tabulators: ITabulators readonly dispid 16;
    property Level: Integer dispid 17;
    property Numbering: ksTextNumberingEnum dispid 18;
    function  Delete: WordBool; dispid 19;
    property TextLineType: ksTextLineType readonly dispid 20;
    property TextLineData: IKompasAPIObject readonly dispid 21;
    property NewPage: WordBool dispid 22;
    function  Assign_(const Other: ITextLine): WordBool; dispid 23;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITextItem
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1DE74AFB-5026-4B85-861F-F0CFDBD443E6}
// *********************************************************************//
  ITextItem = interface(IKompasAPIObject)
    ['{1DE74AFB-5026-4B85-861F-F0CFDBD443E6}']
    function  Get_ItemType: ksTextItemEnum; safecall;
    procedure Set_ItemType(PVal: ksTextItemEnum); safecall;
    function  Get_Str: WideString; safecall;
    procedure Set_Str(const Result: WideString); safecall;
    function  Get_SymbolFontName: WideString; safecall;
    procedure Set_SymbolFontName(const PVal: WideString); safecall;
    function  Get_Number: Integer; safecall;
    procedure Set_Number(Result: Integer); safecall;
    function  Get_SizeFactor: ksTextSizeEnum; safecall;
    procedure Set_SizeFactor(PVal: ksTextSizeEnum); safecall;
    function  Get_NewLine: WordBool; safecall;
    procedure Set_NewLine(Result: WordBool); safecall;
    function  Delete: WordBool; safecall;
    function  Update: WordBool; safecall;
    property ItemType: ksTextItemEnum read Get_ItemType write Set_ItemType;
    property Str: WideString read Get_Str write Set_Str;
    property SymbolFontName: WideString read Get_SymbolFontName write Set_SymbolFontName;
    property Number: Integer read Get_Number write Set_Number;
    property SizeFactor: ksTextSizeEnum read Get_SizeFactor write Set_SizeFactor;
    property NewLine: WordBool read Get_NewLine write Set_NewLine;
  end;

// *********************************************************************//
// DispIntf:  ITextItemDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1DE74AFB-5026-4B85-861F-F0CFDBD443E6}
// *********************************************************************//
  ITextItemDisp = dispinterface
    ['{1DE74AFB-5026-4B85-861F-F0CFDBD443E6}']
    property ItemType: ksTextItemEnum dispid 2001;
    property Str: WideString dispid 2002;
    property SymbolFontName: WideString dispid 2003;
    property Number: Integer dispid 2004;
    property SizeFactor: ksTextSizeEnum dispid 2005;
    property NewLine: WordBool dispid 2006;
    function  Delete: WordBool; dispid 2007;
    function  Update: WordBool; dispid 2008;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAttachedDocuments
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {81FAB1C5-F566-4D06-8D3D-17FF01D3566F}
// *********************************************************************//
  IAttachedDocuments = interface(IKompasCollection)
    ['{81FAB1C5-F566-4D06-8D3D-17FF01D3566F}']
    function  Get_Item(Index: OleVariant): IAttachedDocument; safecall;
    function  Add(const Name: WideString; Transmit: WordBool): IAttachedDocument; safecall;
    property Item[Index: OleVariant]: IAttachedDocument read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IAttachedDocumentsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {81FAB1C5-F566-4D06-8D3D-17FF01D3566F}
// *********************************************************************//
  IAttachedDocumentsDisp = dispinterface
    ['{81FAB1C5-F566-4D06-8D3D-17FF01D3566F}']
    property Item[Index: OleVariant]: IAttachedDocument readonly dispid 0; default;
    function  Add(const Name: WideString; Transmit: WordBool): IAttachedDocument; dispid 1;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAttachedDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {333E9E11-D161-49AE-9791-8BEDB58B4C78}
// *********************************************************************//
  IAttachedDocument = interface(IKompasAPIObject)
    ['{333E9E11-D161-49AE-9791-8BEDB58B4C78}']
    function  Get_Name: WideString; safecall;
    function  Get_Transmit: WordBool; safecall;
    procedure Set_Transmit(PVal: WordBool); safecall;
    function  Get_Comment: WideString; safecall;
    procedure Set_Comment(const PVal: WideString); safecall;
    function  Delete: WordBool; safecall;
    property Name: WideString read Get_Name;
    property Transmit: WordBool read Get_Transmit write Set_Transmit;
    property Comment: WideString read Get_Comment write Set_Comment;
  end;

// *********************************************************************//
// DispIntf:  IAttachedDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {333E9E11-D161-49AE-9791-8BEDB58B4C78}
// *********************************************************************//
  IAttachedDocumentDisp = dispinterface
    ['{333E9E11-D161-49AE-9791-8BEDB58B4C78}']
    property Name: WideString readonly dispid 1;
    property Transmit: WordBool dispid 2;
    property Comment: WideString dispid 3;
    function  Delete: WordBool; dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationCommentObjects
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B8BD0FC7-AB2B-4E7A-8EC2-82060D7D29A7}
// *********************************************************************//
  ISpecificationCommentObjects = interface(IKompasCollection)
    ['{B8BD0FC7-AB2B-4E7A-8EC2-82060D7D29A7}']
    function  Get_Item(Index: OleVariant): ISpecificationCommentObject; safecall;
    function  Add(SectionNamb: Integer): ISpecificationCommentObject; safecall;
    function  Attach(const PVal: ISpecificationCommentObject): WordBool; safecall;
    function  Detach(const PVal: ISpecificationCommentObject): WordBool; safecall;
    property Item[Index: OleVariant]: ISpecificationCommentObject read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationCommentObjectsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B8BD0FC7-AB2B-4E7A-8EC2-82060D7D29A7}
// *********************************************************************//
  ISpecificationCommentObjectsDisp = dispinterface
    ['{B8BD0FC7-AB2B-4E7A-8EC2-82060D7D29A7}']
    property Item[Index: OleVariant]: ISpecificationCommentObject readonly dispid 0; default;
    function  Add(SectionNamb: Integer): ISpecificationCommentObject; dispid 1;
    function  Attach(const PVal: ISpecificationCommentObject): WordBool; dispid 2;
    function  Detach(const PVal: ISpecificationCommentObject): WordBool; dispid 3;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationCommentObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3B6B80CA-2145-4184-B786-0C571DF5ACD7}
// *********************************************************************//
  ISpecificationCommentObject = interface(ISpecificationObject)
    ['{3B6B80CA-2145-4184-B786-0C571DF5ACD7}']
    function  Get_BaseObject: ISpecificationBaseObject; safecall;
    function  Get_BlockNumber: Integer; safecall;
    procedure Set_BlockNumber(PVal: Integer); safecall;
    property BaseObject: ISpecificationBaseObject read Get_BaseObject;
    property BlockNumber: Integer read Get_BlockNumber write Set_BlockNumber;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationCommentObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3B6B80CA-2145-4184-B786-0C571DF5ACD7}
// *********************************************************************//
  ISpecificationCommentObjectDisp = dispinterface
    ['{3B6B80CA-2145-4184-B786-0C571DF5ACD7}']
    property BaseObject: ISpecificationBaseObject readonly dispid 1;
    property BlockNumber: Integer dispid 2;
    property ObjectType: ksSpecificationObjectTypeEnum readonly dispid 100;
    property Section: Integer readonly dispid 101;
    property Subsection: Integer dispid 102;
    property AdditionalSection: Integer dispid 103;
    property AdditionalBlock: Integer dispid 104;
    property NestedSection: Integer dispid 105;
    property NestedBlock: Integer dispid 106;
    property BlockNumberByIndex[Val: Integer]: Integer readonly dispid 107;
    property UniqueNumber: Double readonly dispid 108;
    property State: ksSpecificationObjectStateEnum readonly dispid 109;
    property FirstOnSheet: WordBool dispid 110;
    property IncrementPosition: WordBool dispid 111;
    property Columns: ISpecificationColumns readonly dispid 112;
    property AdditionalColumns: ISpecificationColumns readonly dispid 113;
    property AttachedDocuments: IAttachedDocuments readonly dispid 114;
    function  Update: WordBool; dispid 115;
    function  Delete: WordBool; dispid 116;
    function  Edit: WordBool; dispid 117;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayoutSheets
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7AB54196-0B76-4B01-B769-7F47637173C4}
// *********************************************************************//
  ILayoutSheets = interface(IKompasCollection)
    ['{7AB54196-0B76-4B01-B769-7F47637173C4}']
    function  Get_Item(Index: OleVariant): ILayoutSheet; safecall;
    function  Get_ItemByNumber(Number: Integer): ILayoutSheet; safecall;
    function  Add: ILayoutSheet; safecall;
    property Item[Index: OleVariant]: ILayoutSheet read Get_Item; default;
    property ItemByNumber[Number: Integer]: ILayoutSheet read Get_ItemByNumber;
  end;

// *********************************************************************//
// DispIntf:  ILayoutSheetsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7AB54196-0B76-4B01-B769-7F47637173C4}
// *********************************************************************//
  ILayoutSheetsDisp = dispinterface
    ['{7AB54196-0B76-4B01-B769-7F47637173C4}']
    property Item[Index: OleVariant]: ILayoutSheet readonly dispid 0; default;
    property ItemByNumber[Number: Integer]: ILayoutSheet readonly dispid 1;
    function  Add: ILayoutSheet; dispid 2;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayoutSheet
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D87B5A80-CF52-4510-ADD9-D1344FFFFC07}
// *********************************************************************//
  ILayoutSheet = interface(IKompasAPIObject)
    ['{D87B5A80-CF52-4510-ADD9-D1344FFFFC07}']
    function  Get_Format: ISheetFormat; safecall;
    function  Get_LayoutLibraryFileName: WideString; safecall;
    procedure Set_LayoutLibraryFileName(const PVal: WideString); safecall;
    function  Get_LayoutStyleNumber: Double; safecall;
    procedure Set_LayoutStyleNumber(PVal: Double); safecall;
    function  Update: WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Get_Stamp: IStamp; safecall;
    property Format: ISheetFormat read Get_Format;
    property LayoutLibraryFileName: WideString read Get_LayoutLibraryFileName write Set_LayoutLibraryFileName;
    property LayoutStyleNumber: Double read Get_LayoutStyleNumber write Set_LayoutStyleNumber;
    property Stamp: IStamp read Get_Stamp;
  end;

// *********************************************************************//
// DispIntf:  ILayoutSheetDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D87B5A80-CF52-4510-ADD9-D1344FFFFC07}
// *********************************************************************//
  ILayoutSheetDisp = dispinterface
    ['{D87B5A80-CF52-4510-ADD9-D1344FFFFC07}']
    property Format: ISheetFormat readonly dispid 1;
    property LayoutLibraryFileName: WideString dispid 2;
    property LayoutStyleNumber: Double dispid 3;
    function  Update: WordBool; dispid 4;
    function  Delete: WordBool; dispid 5;
    property Stamp: IStamp readonly dispid 6;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IStamp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {250CE350-7C21-47FD-8FF2-C44A9FF177DF}
// *********************************************************************//
  IStamp = interface(IKompasAPIObject)
    ['{250CE350-7C21-47FD-8FF2-C44A9FF177DF}']
    function  Get_Text(Id: Integer): IText; safecall;
    function  Update: WordBool; safecall;
    function  Clear(Id: Integer): WordBool; safecall;
    function  GetNextColumnId(Id: Integer): Integer; safecall;
    property Text[Id: Integer]: IText read Get_Text;
  end;

// *********************************************************************//
// DispIntf:  IStampDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {250CE350-7C21-47FD-8FF2-C44A9FF177DF}
// *********************************************************************//
  IStampDisp = dispinterface
    ['{250CE350-7C21-47FD-8FF2-C44A9FF177DF}']
    property Text[Id: Integer]: IText readonly dispid 1;
    function  Update: WordBool; dispid 2;
    function  Clear(Id: Integer): WordBool; dispid 3;
    function  GetNextColumnId(Id: Integer): Integer; dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IUserDataStoragesMng
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {77A6D4CA-6418-4DEE-B59C-400BFD052375}
// *********************************************************************//
  IUserDataStoragesMng = interface(IKompasCollection)
    ['{77A6D4CA-6418-4DEE-B59C-400BFD052375}']
    function  Get_Item(Index: OleVariant): IUserDataStorages; safecall;
    function  Add(const Object_: IKompasAPIObject): IUserDataStorages; safecall;
    function  Delete(Index: OleVariant): WordBool; safecall;
    function  Clear: WordBool; safecall;
    property Item[Index: OleVariant]: IUserDataStorages read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IUserDataStoragesMngDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {77A6D4CA-6418-4DEE-B59C-400BFD052375}
// *********************************************************************//
  IUserDataStoragesMngDisp = dispinterface
    ['{77A6D4CA-6418-4DEE-B59C-400BFD052375}']
    property Item[Index: OleVariant]: IUserDataStorages readonly dispid 0; default;
    function  Add(const Object_: IKompasAPIObject): IUserDataStorages; dispid 1;
    function  Delete(Index: OleVariant): WordBool; dispid 2;
    function  Clear: WordBool; dispid 3;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IUserDataStorages
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9DBFB4EB-BE9F-46EF-88FF-BB603A9E786B}
// *********************************************************************//
  IUserDataStorages = interface(IKompasCollection)
    ['{9DBFB4EB-BE9F-46EF-88FF-BB603A9E786B}']
    function  Get_Item(Index: OleVariant): IUserDataStorage; safecall;
    function  Add(const StorageName: WideString): IUserDataStorage; safecall;
    function  Delete(const Password: WideString; Index: OleVariant): WordBool; safecall;
    property Item[Index: OleVariant]: IUserDataStorage read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IUserDataStoragesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9DBFB4EB-BE9F-46EF-88FF-BB603A9E786B}
// *********************************************************************//
  IUserDataStoragesDisp = dispinterface
    ['{9DBFB4EB-BE9F-46EF-88FF-BB603A9E786B}']
    property Item[Index: OleVariant]: IUserDataStorage readonly dispid 0; default;
    function  Add(const StorageName: WideString): IUserDataStorage; dispid 1;
    function  Delete(const Password: WideString; Index: OleVariant): WordBool; dispid 2;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IUserDataStorage
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DD2AF5C4-D5B9-420D-B658-F935F80A8586}
// *********************************************************************//
  IUserDataStorage = interface(IKompasAPIObject)
    ['{DD2AF5C4-D5B9-420D-B658-F935F80A8586}']
    function  Get_Name(const Pass: WideString): WideString; safecall;
    procedure Set_Name(const Pass: WideString; const PVal: WideString); safecall;
    function  SetPassword(const OldPass: WideString; const NewPass: WideString): WordBool; safecall;
    function  Get_Version(const Pass: WideString): Integer; safecall;
    procedure Set_Version(const Pass: WideString; PVal: Integer); safecall;
    function  GetObject(Index: OleVariant; out Object_: OleVariant; out Numb: Integer): WideString; safecall;
    function  SetObject(const Pass: WideString; Index: OleVariant; Object_: OleVariant; 
                        const Comment: WideString): Integer; safecall;
    function  AddObject(const Pass: WideString; Object_: OleVariant; const Comment: WideString): Integer; safecall;
    function  Delete(const Pass: WideString; Index: OleVariant): WordBool; safecall;
    function  Clear(const Pass: WideString): WordBool; safecall;
    property Name[const Pass: WideString]: WideString read Get_Name write Set_Name;
    property Version[const Pass: WideString]: Integer read Get_Version write Set_Version;
  end;

// *********************************************************************//
// DispIntf:  IUserDataStorageDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DD2AF5C4-D5B9-420D-B658-F935F80A8586}
// *********************************************************************//
  IUserDataStorageDisp = dispinterface
    ['{DD2AF5C4-D5B9-420D-B658-F935F80A8586}']
    property Name[const Pass: WideString]: WideString dispid 1;
    function  SetPassword(const OldPass: WideString; const NewPass: WideString): WordBool; dispid 2;
    property Version[const Pass: WideString]: Integer dispid 3;
    function  GetObject(Index: OleVariant; out Object_: OleVariant; out Numb: Integer): WideString; dispid 4;
    function  SetObject(const Pass: WideString; Index: OleVariant; Object_: OleVariant; 
                        const Comment: WideString): Integer; dispid 5;
    function  AddObject(const Pass: WideString; Object_: OleVariant; const Comment: WideString): Integer; dispid 6;
    function  Delete(const Pass: WideString; Index: OleVariant): WordBool; dispid 7;
    function  Clear(const Pass: WideString): WordBool; dispid 8;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IProcessParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CB5FDBC8-4DAE-4C4B-87D5-6FD1F2705C38}
// *********************************************************************//
  IProcessParam = interface(IKompasAPIObject)
    ['{CB5FDBC8-4DAE-4C4B-87D5-6FD1F2705C38}']
    procedure Set_Caption(const PVal: WideString); safecall;
    function  Get_Caption: WideString; safecall;
    function  Get_PropertyTabs: IPropertyTabs; safecall;
    procedure Set_SpecToolbar(PVal: SpecPropertyToolBarEnum); safecall;
    function  Get_SpecToolbar: SpecPropertyToolBarEnum; safecall;
    procedure Set_AutoReduce(PVal: WordBool); safecall;
    function  Get_AutoReduce: WordBool; safecall;
    procedure Set_DefaultControlFix(PVal: DefaultFixTypeEnum); safecall;
    function  Get_DefaultControlFix: DefaultFixTypeEnum; safecall;
    property Caption: WideString read Get_Caption write Set_Caption;
    property PropertyTabs: IPropertyTabs read Get_PropertyTabs;
    property SpecToolbar: SpecPropertyToolBarEnum read Get_SpecToolbar write Set_SpecToolbar;
    property AutoReduce: WordBool read Get_AutoReduce write Set_AutoReduce;
    property DefaultControlFix: DefaultFixTypeEnum read Get_DefaultControlFix write Set_DefaultControlFix;
  end;

// *********************************************************************//
// DispIntf:  IProcessParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CB5FDBC8-4DAE-4C4B-87D5-6FD1F2705C38}
// *********************************************************************//
  IProcessParamDisp = dispinterface
    ['{CB5FDBC8-4DAE-4C4B-87D5-6FD1F2705C38}']
    property Caption: WideString dispid 1;
    property PropertyTabs: IPropertyTabs readonly dispid 2;
    property SpecToolbar: SpecPropertyToolBarEnum dispid 3;
    property AutoReduce: WordBool dispid 4;
    property DefaultControlFix: DefaultFixTypeEnum dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyTabs
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5BA6324E-E555-490F-A0E2-68D3C6C88D92}
// *********************************************************************//
  IPropertyTabs = interface(IKompasCollection)
    ['{5BA6324E-E555-490F-A0E2-68D3C6C88D92}']
    function  Get_Item(Index: OleVariant): IPropertyTab; safecall;
    function  Add(const Caption: WideString): IPropertyTab; safecall;
    function  Delete(Index: OleVariant): WordBool; safecall;
    function  Get_Active: IPropertyTab; safecall;
    function  Get_SystemTab: IPropertyTab; safecall;
    property Item[Index: OleVariant]: IPropertyTab read Get_Item; default;
    property Active: IPropertyTab read Get_Active;
    property SystemTab: IPropertyTab read Get_SystemTab;
  end;

// *********************************************************************//
// DispIntf:  IPropertyTabsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5BA6324E-E555-490F-A0E2-68D3C6C88D92}
// *********************************************************************//
  IPropertyTabsDisp = dispinterface
    ['{5BA6324E-E555-490F-A0E2-68D3C6C88D92}']
    property Item[Index: OleVariant]: IPropertyTab readonly dispid 0; default;
    function  Add(const Caption: WideString): IPropertyTab; dispid 2;
    function  Delete(Index: OleVariant): WordBool; dispid 3;
    property Active: IPropertyTab readonly dispid 4;
    property SystemTab: IPropertyTab readonly dispid 5;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyTab
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {45DE8E5B-BC2B-4584-8BA7-D3014D3A2397}
// *********************************************************************//
  IPropertyTab = interface(IKompasAPIObject)
    ['{45DE8E5B-BC2B-4584-8BA7-D3014D3A2397}']
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Caption(const PVal: WideString); safecall;
    function  Get_Caption: WideString; safecall;
    procedure Set_Active(PVal: WordBool); safecall;
    function  Get_Active: WordBool; safecall;
    function  Get_PropertyControls: IPropertyControls; safecall;
    procedure Set_ResModule(HInstance: OleVariant); safecall;
    function  Get_ResModule: OleVariant; safecall;
    procedure Set_Image(Bmp: OleVariant); safecall;
    function  Get_Image: OleVariant; safecall;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Caption: WideString read Get_Caption write Set_Caption;
    property Active: WordBool read Get_Active write Set_Active;
    property PropertyControls: IPropertyControls read Get_PropertyControls;
    property ResModule: OleVariant read Get_ResModule write Set_ResModule;
    property Image: OleVariant read Get_Image write Set_Image;
  end;

// *********************************************************************//
// DispIntf:  IPropertyTabDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {45DE8E5B-BC2B-4584-8BA7-D3014D3A2397}
// *********************************************************************//
  IPropertyTabDisp = dispinterface
    ['{45DE8E5B-BC2B-4584-8BA7-D3014D3A2397}']
    property Visible: WordBool dispid 1;
    property Caption: WideString dispid 2;
    property Active: WordBool dispid 3;
    property PropertyControls: IPropertyControls readonly dispid 4;
    property ResModule: OleVariant dispid 5;
    property Image: OleVariant dispid 6;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyControls
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {548241BA-FDA8-4633-981E-94552BE38D6B}
// *********************************************************************//
  IPropertyControls = interface(IKompasCollection)
    ['{548241BA-FDA8-4633-981E-94552BE38D6B}']
    function  Get_Item(Index: OleVariant): IPropertyControl; safecall;
    function  Add(Type_: ControlTypeEnum): IPropertyControl; safecall;
    function  Delete(Index: OleVariant): WordBool; safecall;
    property Item[Index: OleVariant]: IPropertyControl read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IPropertyControlsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {548241BA-FDA8-4633-981E-94552BE38D6B}
// *********************************************************************//
  IPropertyControlsDisp = dispinterface
    ['{548241BA-FDA8-4633-981E-94552BE38D6B}']
    property Item[Index: OleVariant]: IPropertyControl readonly dispid 0; default;
    function  Add(Type_: ControlTypeEnum): IPropertyControl; dispid 2;
    function  Delete(Index: OleVariant): WordBool; dispid 3;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyControl
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E35F8FF8-03C6-460C-A2F1-294A3A29A029}
// *********************************************************************//
  IPropertyControl = interface(IKompasAPIObject)
    ['{E35F8FF8-03C6-460C-A2F1-294A3A29A029}']
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    function  Get_ControlType: ControlTypeEnum; safecall;
    procedure Set_Id(PVal: Integer); safecall;
    function  Get_Id: Integer; safecall;
    procedure Set_Enable(PVal: WordBool); safecall;
    function  Get_Enable: WordBool; safecall;
    procedure Set_Value(PVal: OleVariant); safecall;
    function  Get_Value: OleVariant; safecall;
    procedure Set_NameVisibility(PVal: PropertyControlNameVisibility); safecall;
    function  Get_NameVisibility: PropertyControlNameVisibility; safecall;
    procedure Set_Hint(const PVal: WideString); safecall;
    function  Get_Hint: WideString; safecall;
    procedure Set_Tips(const PVal: WideString); safecall;
    function  Get_Tips: WideString; safecall;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Name: WideString read Get_Name write Set_Name;
    property ControlType: ControlTypeEnum read Get_ControlType;
    property Id: Integer read Get_Id write Set_Id;
    property Enable: WordBool read Get_Enable write Set_Enable;
    property Value: OleVariant read Get_Value write Set_Value;
    property NameVisibility: PropertyControlNameVisibility read Get_NameVisibility write Set_NameVisibility;
    property Hint: WideString read Get_Hint write Set_Hint;
    property Tips: WideString read Get_Tips write Set_Tips;
  end;

// *********************************************************************//
// DispIntf:  IPropertyControlDisp
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E35F8FF8-03C6-460C-A2F1-294A3A29A029}
// *********************************************************************//
  IPropertyControlDisp = dispinterface
    ['{E35F8FF8-03C6-460C-A2F1-294A3A29A029}']
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {34196EC3-58B2-436C-A353-427703740874}
// *********************************************************************//
  IPropertyManager = interface(IKompasAPIObject)
    ['{34196EC3-58B2-436C-A353-427703740874}']
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Caption(const PVal: WideString); safecall;
    function  Get_Caption: WideString; safecall;
    procedure Set_Layout(PVal: PropertyManagerLayout); safecall;
    function  Get_Layout: PropertyManagerLayout; safecall;
    function  Get_PropertyTabs: IPropertyTabs; safecall;
    procedure SetGabaritRect(Left: Integer; Top: Integer; Right: Integer; Bottom: Integer); safecall;
    procedure GetGabaritRect(out Left: Integer; out Top: Integer; out Right: Integer; 
                             out Bottom: Integer); safecall;
    function  ShowTabs: WordBool; safecall;
    function  UpdateTabs: WordBool; safecall;
    function  HideTabs: WordBool; safecall;
    procedure Set_SpecToolbar(PVal: SpecPropertyToolBarEnum); safecall;
    function  Get_SpecToolbar: SpecPropertyToolBarEnum; safecall;
    function  RepeatCommand: WordBool; safecall;
    procedure Set_AutoHideMode(PVal: WordBool); safecall;
    function  Get_AutoHideMode: WordBool; safecall;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Caption: WideString read Get_Caption write Set_Caption;
    property Layout: PropertyManagerLayout read Get_Layout write Set_Layout;
    property PropertyTabs: IPropertyTabs read Get_PropertyTabs;
    property SpecToolbar: SpecPropertyToolBarEnum read Get_SpecToolbar write Set_SpecToolbar;
    property AutoHideMode: WordBool read Get_AutoHideMode write Set_AutoHideMode;
  end;

// *********************************************************************//
// DispIntf:  IPropertyManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {34196EC3-58B2-436C-A353-427703740874}
// *********************************************************************//
  IPropertyManagerDisp = dispinterface
    ['{34196EC3-58B2-436C-A353-427703740874}']
    property Visible: WordBool dispid 1;
    property Caption: WideString dispid 2;
    property Layout: PropertyManagerLayout dispid 3;
    property PropertyTabs: IPropertyTabs readonly dispid 4;
    procedure SetGabaritRect(Left: Integer; Top: Integer; Right: Integer; Bottom: Integer); dispid 5;
    procedure GetGabaritRect(out Left: Integer; out Top: Integer; out Right: Integer; 
                             out Bottom: Integer); dispid 6;
    function  ShowTabs: WordBool; dispid 7;
    function  UpdateTabs: WordBool; dispid 8;
    function  HideTabs: WordBool; dispid 9;
    property SpecToolbar: SpecPropertyToolBarEnum dispid 10;
    function  RepeatCommand: WordBool; dispid 11;
    property AutoHideMode: WordBool dispid 12;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILibraryManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {53CDC510-99EA-4736-8542-194F4D8FB32B}
// *********************************************************************//
  ILibraryManager = interface(IKompasAPIObject)
    ['{53CDC510-99EA-4736-8542-194F4D8FB32B}']
    function  Get_ProceduresLibraries: IProceduresLibraries; safecall;
    function  Get_FragmentsLibraries: IInsertsLibraries; safecall;
    function  Get_ModelsLibraries: IInsertsLibraries; safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Layout: PropertyManagerLayout; safecall;
    function  Get_ActiveFolder: WideString; safecall;
    procedure Set_ActiveFolder(const PVal: WideString); safecall;
    function  Get_ActiveFolderComment: OleVariant; safecall;
    procedure Set_ActiveFolderComment(PVal: OleVariant); safecall;
    procedure AddFolder(const PathFolder: WideString); safecall;
    procedure RemoveFolder(const PathFolder: WideString); safecall;
    function  Get_SystemControlStartLibrary: IProceduresLibrary; safecall;
    function  Get_CurrentLibrary: IProceduresLibrary; safecall;
    function  SetCurrentLibrary(const PVal: IProceduresLibrary): WordBool; safecall;
    function  Get_SystemControlStartResult: ksSystemControlStartEnum; safecall;
    property ProceduresLibraries: IProceduresLibraries read Get_ProceduresLibraries;
    property FragmentsLibraries: IInsertsLibraries read Get_FragmentsLibraries;
    property ModelsLibraries: IInsertsLibraries read Get_ModelsLibraries;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Layout: PropertyManagerLayout read Get_Layout;
    property ActiveFolder: WideString read Get_ActiveFolder write Set_ActiveFolder;
    property ActiveFolderComment: OleVariant read Get_ActiveFolderComment write Set_ActiveFolderComment;
    property SystemControlStartLibrary: IProceduresLibrary read Get_SystemControlStartLibrary;
    property CurrentLibrary: IProceduresLibrary read Get_CurrentLibrary;
    property SystemControlStartResult: ksSystemControlStartEnum read Get_SystemControlStartResult;
  end;

// *********************************************************************//
// DispIntf:  ILibraryManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {53CDC510-99EA-4736-8542-194F4D8FB32B}
// *********************************************************************//
  ILibraryManagerDisp = dispinterface
    ['{53CDC510-99EA-4736-8542-194F4D8FB32B}']
    property ProceduresLibraries: IProceduresLibraries readonly dispid 1;
    property FragmentsLibraries: IInsertsLibraries readonly dispid 2;
    property ModelsLibraries: IInsertsLibraries readonly dispid 3;
    property Visible: WordBool dispid 4;
    property Layout: PropertyManagerLayout readonly dispid 5;
    property ActiveFolder: WideString dispid 6;
    property ActiveFolderComment: OleVariant dispid 7;
    procedure AddFolder(const PathFolder: WideString); dispid 8;
    procedure RemoveFolder(const PathFolder: WideString); dispid 9;
    property SystemControlStartLibrary: IProceduresLibrary readonly dispid 10;
    property CurrentLibrary: IProceduresLibrary readonly dispid 11;
    function  SetCurrentLibrary(const PVal: IProceduresLibrary): WordBool; dispid 12;
    property SystemControlStartResult: ksSystemControlStartEnum readonly dispid 13;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IProceduresLibraries
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {80F95B5B-DB8A-46B7-8C22-605A0AECD597}
// *********************************************************************//
  IProceduresLibraries = interface(IKompasCollection)
    ['{80F95B5B-DB8A-46B7-8C22-605A0AECD597}']
    function  Get_Item(Index: OleVariant): IProceduresLibrary; safecall;
    property Item[Index: OleVariant]: IProceduresLibrary read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IProceduresLibrariesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {80F95B5B-DB8A-46B7-8C22-605A0AECD597}
// *********************************************************************//
  IProceduresLibrariesDisp = dispinterface
    ['{80F95B5B-DB8A-46B7-8C22-605A0AECD597}']
    property Item[Index: OleVariant]: IProceduresLibrary readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILibrary
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D6E9AE1-7DDF-4354-B8D0-E12023B186FA}
// *********************************************************************//
  ILibrary = interface(IKompasAPIObject)
    ['{9D6E9AE1-7DDF-4354-B8D0-E12023B186FA}']
    function  Get_LibraryManagerFolder: WideString; safecall;
    function  Get_Attach: WordBool; safecall;
    procedure Set_Attach(PVal: WordBool); safecall;
    function  Get_LibraryType: ksLibraryTypeEnum; safecall;
    function  Get_Name: WideString; safecall;
    function  Get_PathName: WideString; safecall;
    function  Get_Enable: WordBool; safecall;
    function  Execute(Command: Integer; const External: IDispatch; Post: WordBool): WordBool; safecall;
    property LibraryManagerFolder: WideString read Get_LibraryManagerFolder;
    property Attach: WordBool read Get_Attach write Set_Attach;
    property LibraryType: ksLibraryTypeEnum read Get_LibraryType;
    property Name: WideString read Get_Name;
    property PathName: WideString read Get_PathName;
    property Enable: WordBool read Get_Enable;
  end;

// *********************************************************************//
// DispIntf:  ILibraryDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D6E9AE1-7DDF-4354-B8D0-E12023B186FA}
// *********************************************************************//
  ILibraryDisp = dispinterface
    ['{9D6E9AE1-7DDF-4354-B8D0-E12023B186FA}']
    property LibraryManagerFolder: WideString readonly dispid 2001;
    property Attach: WordBool dispid 2002;
    property LibraryType: ksLibraryTypeEnum readonly dispid 2003;
    property Name: WideString readonly dispid 2004;
    property PathName: WideString readonly dispid 2005;
    property Enable: WordBool readonly dispid 2006;
    function  Execute(Command: Integer; const External: IDispatch; Post: WordBool): WordBool; dispid 2007;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IProceduresLibrary
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1AECE59E-DE4C-4FB9-B62B-7967573AD3B1}
// *********************************************************************//
  IProceduresLibrary = interface(ILibrary)
    ['{1AECE59E-DE4C-4FB9-B62B-7967573AD3B1}']
    function  Get_Style: ksLibraryStyleEnum; safecall;
    procedure Set_Style(PVal: ksLibraryStyleEnum); safecall;
    function  Get_Procedures: IProcedures; safecall;
    function  Get_CurrentCommand: Integer; safecall;
    function  SystemControlStop: WordBool; safecall;
    function  SystemControlStart(const menuCommand: WideString): ksSystemControlStartEnum; safecall;
    function  Get_UniqueId: Integer; safecall;
    function  Get_Executable: WordBool; safecall;
    function  Get_AddIns: WordBool; safecall;
    function  Get_ExternalInterface: IDispatch; safecall;
    function  Get_LibraryName: WideString; safecall;
    property Style: ksLibraryStyleEnum read Get_Style write Set_Style;
    property Procedures: IProcedures read Get_Procedures;
    property CurrentCommand: Integer read Get_CurrentCommand;
    property UniqueId: Integer read Get_UniqueId;
    property Executable: WordBool read Get_Executable;
    property AddIns: WordBool read Get_AddIns;
    property ExternalInterface: IDispatch read Get_ExternalInterface;
    property LibraryName: WideString read Get_LibraryName;
  end;

// *********************************************************************//
// DispIntf:  IProceduresLibraryDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1AECE59E-DE4C-4FB9-B62B-7967573AD3B1}
// *********************************************************************//
  IProceduresLibraryDisp = dispinterface
    ['{1AECE59E-DE4C-4FB9-B62B-7967573AD3B1}']
    property Style: ksLibraryStyleEnum dispid 1;
    property Procedures: IProcedures readonly dispid 2;
    property CurrentCommand: Integer readonly dispid 3;
    function  SystemControlStop: WordBool; dispid 4;
    function  SystemControlStart(const menuCommand: WideString): ksSystemControlStartEnum; dispid 5;
    property UniqueId: Integer readonly dispid 6;
    property Executable: WordBool readonly dispid 7;
    property AddIns: WordBool readonly dispid 8;
    property ExternalInterface: IDispatch readonly dispid 9;
    property LibraryName: WideString readonly dispid 10;
    property LibraryManagerFolder: WideString readonly dispid 2001;
    property Attach: WordBool dispid 2002;
    property LibraryType: ksLibraryTypeEnum readonly dispid 2003;
    property Name: WideString readonly dispid 2004;
    property PathName: WideString readonly dispid 2005;
    property Enable: WordBool readonly dispid 2006;
    function  Execute(Command: Integer; const External: IDispatch; Post: WordBool): WordBool; dispid 2007;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IProcedures
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1A77F076-2295-40F9-B1AA-2838C4CA0887}
// *********************************************************************//
  IProcedures = interface(IKompasCollection)
    ['{1A77F076-2295-40F9-B1AA-2838C4CA0887}']
    function  Get_Item(Index: OleVariant): IProcedure; safecall;
    function  Get_ItemByID(Id: Integer): IProcedure; safecall;
    property Item[Index: OleVariant]: IProcedure read Get_Item; default;
    property ItemByID[Id: Integer]: IProcedure read Get_ItemByID;
  end;

// *********************************************************************//
// DispIntf:  IProceduresDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1A77F076-2295-40F9-B1AA-2838C4CA0887}
// *********************************************************************//
  IProceduresDisp = dispinterface
    ['{1A77F076-2295-40F9-B1AA-2838C4CA0887}']
    property Item[Index: OleVariant]: IProcedure readonly dispid 0; default;
    property ItemByID[Id: Integer]: IProcedure readonly dispid 1;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IProcedure
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7BF9DF08-D14D-4DA9-ABC2-FB458E7122D0}
// *********************************************************************//
  IProcedure = interface(IKompasAPIObject)
    ['{7BF9DF08-D14D-4DA9-ABC2-FB458E7122D0}']
    function  Get_Name: WideString; safecall;
    function  Get_LibraryFolder: WideString; safecall;
    function  Get_Id: Integer; safecall;
    function  Execute(const External: IDispatch; Post: WordBool): WordBool; safecall;
    property Name: WideString read Get_Name;
    property LibraryFolder: WideString read Get_LibraryFolder;
    property Id: Integer read Get_Id;
  end;

// *********************************************************************//
// DispIntf:  IProcedureDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7BF9DF08-D14D-4DA9-ABC2-FB458E7122D0}
// *********************************************************************//
  IProcedureDisp = dispinterface
    ['{7BF9DF08-D14D-4DA9-ABC2-FB458E7122D0}']
    property Name: WideString readonly dispid 1;
    property LibraryFolder: WideString readonly dispid 2;
    property Id: Integer readonly dispid 3;
    function  Execute(const External: IDispatch; Post: WordBool): WordBool; dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertsLibraries
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A6E82D68-69D5-40C0-9A85-275B22219135}
// *********************************************************************//
  IInsertsLibraries = interface(IKompasCollection)
    ['{A6E82D68-69D5-40C0-9A85-275B22219135}']
    function  Get_Item(Index: OleVariant): IInsertsLibrary; safecall;
    property Item[Index: OleVariant]: IInsertsLibrary read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IInsertsLibrariesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A6E82D68-69D5-40C0-9A85-275B22219135}
// *********************************************************************//
  IInsertsLibrariesDisp = dispinterface
    ['{A6E82D68-69D5-40C0-9A85-275B22219135}']
    property Item[Index: OleVariant]: IInsertsLibrary readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertsLibrary
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {885CAD68-B42B-45CF-8620-E0138558EFE3}
// *********************************************************************//
  IInsertsLibrary = interface(ILibrary)
    ['{885CAD68-B42B-45CF-8620-E0138558EFE3}']
    function  Get_ActiveFolder: WideString; safecall;
    function  SetActiveFolder(const PathFolder: WideString; LastIsFile: WordBool; 
                              HaveLibName: WordBool): WordBool; safecall;
    function  Get_Inserts: IInserts; safecall;
    function  AddFolder(const PathFolder: WideString): WordBool; safecall;
    function  RemoveFolder(const PathFolder: WideString): WordBool; safecall;
    property ActiveFolder: WideString read Get_ActiveFolder;
    property Inserts: IInserts read Get_Inserts;
  end;

// *********************************************************************//
// DispIntf:  IInsertsLibraryDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {885CAD68-B42B-45CF-8620-E0138558EFE3}
// *********************************************************************//
  IInsertsLibraryDisp = dispinterface
    ['{885CAD68-B42B-45CF-8620-E0138558EFE3}']
    property ActiveFolder: WideString readonly dispid 1;
    function  SetActiveFolder(const PathFolder: WideString; LastIsFile: WordBool; 
                              HaveLibName: WordBool): WordBool; dispid 2;
    property Inserts: IInserts readonly dispid 3;
    function  AddFolder(const PathFolder: WideString): WordBool; dispid 4;
    function  RemoveFolder(const PathFolder: WideString): WordBool; dispid 5;
    property LibraryManagerFolder: WideString readonly dispid 2001;
    property Attach: WordBool dispid 2002;
    property LibraryType: ksLibraryTypeEnum readonly dispid 2003;
    property Name: WideString readonly dispid 2004;
    property PathName: WideString readonly dispid 2005;
    property Enable: WordBool readonly dispid 2006;
    function  Execute(Command: Integer; const External: IDispatch; Post: WordBool): WordBool; dispid 2007;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInserts
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FCBF6340-119D-4736-BB95-F1EAB4BEF1B8}
// *********************************************************************//
  IInserts = interface(IKompasCollection)
    ['{FCBF6340-119D-4736-BB95-F1EAB4BEF1B8}']
    function  Get_Item(Index: OleVariant): IInsert; safecall;
    function  Add(const Name: WideString; DocType: DocumentTypeEnum): IInsert; safecall;
    property Item[Index: OleVariant]: IInsert read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IInsertsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FCBF6340-119D-4736-BB95-F1EAB4BEF1B8}
// *********************************************************************//
  IInsertsDisp = dispinterface
    ['{FCBF6340-119D-4736-BB95-F1EAB4BEF1B8}']
    property Item[Index: OleVariant]: IInsert readonly dispid 0; default;
    function  Add(const Name: WideString; DocType: DocumentTypeEnum): IInsert; dispid 1;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsert
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D6A6D305-6B5C-4392-B61D-D669C092EEF2}
// *********************************************************************//
  IInsert = interface(IKompasAPIObject)
    ['{D6A6D305-6B5C-4392-B61D-D669C092EEF2}']
    function  Get_Name: WideString; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Comment: OleVariant; safecall;
    procedure Set_Comment(PVal: OleVariant); safecall;
    function  Get_LibraryFolder: WideString; safecall;
    function  Get_PathName: WideString; safecall;
    function  Edit: IKompasDocument; safecall;
    function  Delete: WordBool; safecall;
    property Name: WideString read Get_Name write Set_Name;
    property Comment: OleVariant read Get_Comment write Set_Comment;
    property LibraryFolder: WideString read Get_LibraryFolder;
    property PathName: WideString read Get_PathName;
  end;

// *********************************************************************//
// DispIntf:  IInsertDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D6A6D305-6B5C-4392-B61D-D669C092EEF2}
// *********************************************************************//
  IInsertDisp = dispinterface
    ['{D6A6D305-6B5C-4392-B61D-D669C092EEF2}']
    property Name: WideString dispid 1;
    property Comment: OleVariant dispid 2;
    property LibraryFolder: WideString readonly dispid 3;
    property PathName: WideString readonly dispid 4;
    function  Edit: IKompasDocument; dispid 5;
    function  Delete: WordBool; dispid 6;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IKompasError
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0A8B4CD1-7158-4CE6-96E0-885376F5DE1B}
// *********************************************************************//
  IKompasError = interface(IKompasAPIObject)
    ['{0A8B4CD1-7158-4CE6-96E0-885376F5DE1B}']
    function  Get_Code: Integer; safecall;
    function  Get_Description: WideString; safecall;
    function  Get_Error3D: WordBool; safecall;
    procedure Report; safecall;
    procedure Clear; safecall;
    property Code: Integer read Get_Code;
    property Description: WideString read Get_Description;
    property Error3D: WordBool read Get_Error3D;
  end;

// *********************************************************************//
// DispIntf:  IKompasErrorDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0A8B4CD1-7158-4CE6-96E0-885376F5DE1B}
// *********************************************************************//
  IKompasErrorDisp = dispinterface
    ['{0A8B4CD1-7158-4CE6-96E0-885376F5DE1B}']
    property Code: Integer readonly dispid 1;
    property Description: WideString readonly dispid 2;
    property Error3D: WordBool readonly dispid 3;
    procedure Report; dispid 4;
    procedure Clear; dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IConverter
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {642D03AB-4798-48A5-B075-3CD9AFA18554}
// *********************************************************************//
  IConverter = interface(IKompasAPIObject)
    ['{642D03AB-4798-48A5-B075-3CD9AFA18554}']
    function  ConverterParameters(Command: Integer): IUnknown; safecall;
    function  GetFilter(DocType: Integer; SaveAs: WordBool; out Command: Integer): WideString; safecall;
    function  Convert(const InputFile: WideString; const Outfile: WideString; Command: Integer; 
                      ShowParam: WordBool): Integer; safecall;
    function  VisualEditConvertParam(ParentHwnd: OLE_HANDLE; Command: Integer): WordBool; safecall;
  end;

// *********************************************************************//
// DispIntf:  IConverterDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {642D03AB-4798-48A5-B075-3CD9AFA18554}
// *********************************************************************//
  IConverterDisp = dispinterface
    ['{642D03AB-4798-48A5-B075-3CD9AFA18554}']
    function  ConverterParameters(Command: Integer): IUnknown; dispid 1;
    function  GetFilter(DocType: Integer; SaveAs: WordBool; out Command: Integer): WideString; dispid 2;
    function  Convert(const InputFile: WideString; const Outfile: WideString; Command: Integer; 
                      ShowParam: WordBool): Integer; dispid 3;
    function  VisualEditConvertParam(ParentHwnd: OLE_HANDLE; Command: Integer): WordBool; dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICheckSum
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2AA9F713-2328-4E8F-B996-9DFDABC67DC9}
// *********************************************************************//
  ICheckSum = interface(IKompasAPIObject)
    ['{2AA9F713-2328-4E8F-B996-9DFDABC67DC9}']
    procedure Add(Value: OleVariant; Com: WordBool); safecall;
    function  Get_Result: OleVariant; safecall;
    function  Get_StrResult: WideString; safecall;
    function  AddInterface(const Object_: IUnknown; Com: WordBool): WordBool; safecall;
    function  AddReference(Object_: Integer; Doc: Integer; Com: WordBool): WordBool; safecall;
    procedure Clear; safecall;
    function  Get_Version: Integer; safecall;
    procedure Set_Version(PVal: Integer); safecall;
    property Result: OleVariant read Get_Result;
    property StrResult: WideString read Get_StrResult;
    property Version: Integer read Get_Version write Set_Version;
  end;

// *********************************************************************//
// DispIntf:  ICheckSumDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2AA9F713-2328-4E8F-B996-9DFDABC67DC9}
// *********************************************************************//
  ICheckSumDisp = dispinterface
    ['{2AA9F713-2328-4E8F-B996-9DFDABC67DC9}']
    procedure Add(Value: OleVariant; Com: WordBool); dispid 1;
    property Result: OleVariant readonly dispid 2;
    property StrResult: WideString readonly dispid 3;
    function  AddInterface(const Object_: IUnknown; Com: WordBool): WordBool; dispid 4;
    function  AddReference(Object_: Integer; Doc: Integer; Com: WordBool): WordBool; dispid 5;
    procedure Clear; dispid 6;
    property Version: Integer dispid 7;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IProgressBarIndicator
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BE125ABA-EAB2-4A22-99D7-108C84B6DCC5}
// *********************************************************************//
  IProgressBarIndicator = interface(IKompasAPIObject)
    ['{BE125ABA-EAB2-4A22-99D7-108C84B6DCC5}']
    procedure Start(MinVal: Integer; MaxVal: Integer; const TextVal: WideString; ResetVal: WordBool); safecall;
    procedure SetProgress(CurrentVal: Integer; const TextVal: WideString; ResetVal: WordBool); safecall;
    procedure SetText(const TextVal: WideString); safecall;
    procedure Stop(const TextVal: WideString; ResetVal: WordBool); safecall;
  end;

// *********************************************************************//
// DispIntf:  IProgressBarIndicatorDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BE125ABA-EAB2-4A22-99D7-108C84B6DCC5}
// *********************************************************************//
  IProgressBarIndicatorDisp = dispinterface
    ['{BE125ABA-EAB2-4A22-99D7-108C84B6DCC5}']
    procedure Start(MinVal: Integer; MaxVal: Integer; const TextVal: WideString; ResetVal: WordBool); dispid 8001;
    procedure SetProgress(CurrentVal: Integer; const TextVal: WideString; ResetVal: WordBool); dispid 8002;
    procedure SetText(const TextVal: WideString); dispid 8003;
    procedure Stop(const TextVal: WideString; ResetVal: WordBool); dispid 8004;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISystemSettings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FFB66332-17FF-47EB-AC43-32084F8F6077}
// *********************************************************************//
  ISystemSettings = interface(IKompasAPIObject)
    ['{FFB66332-17FF-47EB-AC43-32084F8F6077}']
    procedure Set_FilesAutoSaveSwitchOn(PVal: WordBool); safecall;
    function  Get_FilesAutoSaveSwitchOn: WordBool; safecall;
    procedure Set_FilesBackupPrevCopySwitchOn(PVal: WordBool); safecall;
    function  Get_FilesBackupPrevCopySwitchOn: WordBool; safecall;
    procedure Set_ModelLocalCSCreateInAbsoluteCS(PVal: WordBool); safecall;
    function  Get_ModelLocalCSCreateInAbsoluteCS: WordBool; safecall;
    procedure Set_ModelLocalCSSetActive(PVal: WordBool); safecall;
    function  Get_ModelLocalCSSetActive: WordBool; safecall;
    procedure Set_ModelSmoothMotion(PVal: WordBool); safecall;
    function  Get_ModelSmoothMotion: WordBool; safecall;
    function  Get_ReportStyleListSettings: ILibArraySettings; safecall;
    property FilesAutoSaveSwitchOn: WordBool read Get_FilesAutoSaveSwitchOn write Set_FilesAutoSaveSwitchOn;
    property FilesBackupPrevCopySwitchOn: WordBool read Get_FilesBackupPrevCopySwitchOn write Set_FilesBackupPrevCopySwitchOn;
    property ModelLocalCSCreateInAbsoluteCS: WordBool read Get_ModelLocalCSCreateInAbsoluteCS write Set_ModelLocalCSCreateInAbsoluteCS;
    property ModelLocalCSSetActive: WordBool read Get_ModelLocalCSSetActive write Set_ModelLocalCSSetActive;
    property ModelSmoothMotion: WordBool read Get_ModelSmoothMotion write Set_ModelSmoothMotion;
    property ReportStyleListSettings: ILibArraySettings read Get_ReportStyleListSettings;
  end;

// *********************************************************************//
// DispIntf:  ISystemSettingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FFB66332-17FF-47EB-AC43-32084F8F6077}
// *********************************************************************//
  ISystemSettingsDisp = dispinterface
    ['{FFB66332-17FF-47EB-AC43-32084F8F6077}']
    property FilesAutoSaveSwitchOn: WordBool dispid 1;
    property FilesBackupPrevCopySwitchOn: WordBool dispid 2;
    property ModelLocalCSCreateInAbsoluteCS: WordBool dispid 3;
    property ModelLocalCSSetActive: WordBool dispid 4;
    property ModelSmoothMotion: WordBool dispid 5;
    property ReportStyleListSettings: ILibArraySettings readonly dispid 6;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILibArraySettings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {76D9033D-5F87-41CC-A3E8-55EFEE94B677}
// *********************************************************************//
  ILibArraySettings = interface(IKompasAPIObject)
    ['{76D9033D-5F87-41CC-A3E8-55EFEE94B677}']
    function  Get_LibraryCount: Integer; safecall;
    function  GetLibrary(Index: Integer; out Use: WordBool): WideString; safecall;
    function  SetLibraryUse(Index: OleVariant; Use: WordBool): WordBool; safecall;
    function  GetLibrarys(out FileNames: OleVariant; out Uses_: OleVariant): WordBool; safecall;
    function  AddLibrary(const FileName: WideString; Use: WordBool): WordBool; safecall;
    function  RemoveLibrary(Index: OleVariant): WordBool; safecall;
    property LibraryCount: Integer read Get_LibraryCount;
  end;

// *********************************************************************//
// DispIntf:  ILibArraySettingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {76D9033D-5F87-41CC-A3E8-55EFEE94B677}
// *********************************************************************//
  ILibArraySettingsDisp = dispinterface
    ['{76D9033D-5F87-41CC-A3E8-55EFEE94B677}']
    property LibraryCount: Integer readonly dispid 1;
    function  GetLibrary(Index: Integer; out Use: WordBool): WideString; dispid 2;
    function  SetLibraryUse(Index: OleVariant; Use: WordBool): WordBool; dispid 3;
    function  GetLibrarys(out FileNames: OleVariant; out Uses_: OleVariant): WordBool; dispid 4;
    function  AddLibrary(const FileName: WideString; Use: WordBool): WordBool; dispid 5;
    function  RemoveLibrary(Index: OleVariant): WordBool; dispid 6;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMath2D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0409EC8F-88F7-4242-81E7-965ABEAE932C}
// *********************************************************************//
  IMath2D = interface(IKompasAPIObject)
    ['{0409EC8F-88F7-4242-81E7-965ABEAE932C}']
    function  Line(X: Double; Y: Double; Angle: Double): ICurve2D; safecall;
    function  LineSeg(X1: Double; Y1: Double; X2: Double; Y2: Double): ICurve2D; safecall;
    function  Arc(Xc: Double; Yc: Double; Radius: Double; Angle1: Double; Angle2: Double; 
                  Direction: WordBool): ICurve2D; safecall;
    function  Circle(Xc: Double; Yc: Double; Radius: Double): ICurve2D; safecall;
    function  PolyLine(Points: OleVariant; Closed: WordBool): ICurve2D; safecall;
    function  Ellipse(Xc: Double; Yc: Double; A: Double; B: Double; Angle: Double): ICurve2D; safecall;
    function  EllipseArc(Xc: Double; Yc: Double; A: Double; B: Double; Angle: Double; 
                         Angle1: Double; Angle2: Double; Direction: WordBool): ICurve2D; safecall;
    function  Bezier(Closed: WordBool; AllPoints: WordBool; Points: OleVariant): ICurve2D; safecall;
    function  Nurbs(Closed: WordBool; Degree: Integer; Points: OleVariant; Weights: OleVariant; 
                    Knots: OleVariant): ICurve2D; safecall;
    function  Symmetry(var X: Double; var Y: Double; const Curve: ICurve2D): WordBool; safecall;
    function  Rotate(var X: Double; var Y: Double; Xc: Double; Yc: Double; Angle: Double): WordBool; safecall;
    function  MovePoint(var X: Double; var Y: Double; Angle: Double; Len: Double): WordBool; safecall;
  end;

// *********************************************************************//
// DispIntf:  IMath2DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0409EC8F-88F7-4242-81E7-965ABEAE932C}
// *********************************************************************//
  IMath2DDisp = dispinterface
    ['{0409EC8F-88F7-4242-81E7-965ABEAE932C}']
    function  Line(X: Double; Y: Double; Angle: Double): ICurve2D; dispid 1;
    function  LineSeg(X1: Double; Y1: Double; X2: Double; Y2: Double): ICurve2D; dispid 2;
    function  Arc(Xc: Double; Yc: Double; Radius: Double; Angle1: Double; Angle2: Double; 
                  Direction: WordBool): ICurve2D; dispid 3;
    function  Circle(Xc: Double; Yc: Double; Radius: Double): ICurve2D; dispid 4;
    function  PolyLine(Points: OleVariant; Closed: WordBool): ICurve2D; dispid 5;
    function  Ellipse(Xc: Double; Yc: Double; A: Double; B: Double; Angle: Double): ICurve2D; dispid 6;
    function  EllipseArc(Xc: Double; Yc: Double; A: Double; B: Double; Angle: Double; 
                         Angle1: Double; Angle2: Double; Direction: WordBool): ICurve2D; dispid 7;
    function  Bezier(Closed: WordBool; AllPoints: WordBool; Points: OleVariant): ICurve2D; dispid 8;
    function  Nurbs(Closed: WordBool; Degree: Integer; Points: OleVariant; Weights: OleVariant; 
                    Knots: OleVariant): ICurve2D; dispid 9;
    function  Symmetry(var X: Double; var Y: Double; const Curve: ICurve2D): WordBool; dispid 10;
    function  Rotate(var X: Double; var Y: Double; Xc: Double; Yc: Double; Angle: Double): WordBool; dispid 11;
    function  MovePoint(var X: Double; var Y: Double; Angle: Double; Len: Double): WordBool; dispid 12;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICurve2D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {65C82884-C41B-47A1-8C07-E8820D6718EA}
// *********************************************************************//
  ICurve2D = interface(IKompasAPIObject)
    ['{65C82884-C41B-47A1-8C07-E8820D6718EA}']
    function  Intersect(const Curve2: ICurve2D): OleVariant; safecall;
    function  Tangent(const Curve2: ICurve2D; out Curve1Points: OleVariant; 
                      out Curve2Points: OleVariant): WordBool; safecall;
    function  TangentLinePoint(X: Double; Y: Double): OleVariant; safecall;
    function  CouplingCurvCurv(const Curve2: ICurve2D; Radius: Double): OleVariant; safecall;
    function  PointProjection(X: Double; Y: Double; out Kx: Double; out Ky: Double; out T: Double; 
                              out Angle: Double): WordBool; safecall;
    function  CalculatePolygonByStep(Step: Double): OleVariant; safecall;
    function  MovePoint(var X: Double; var Y: Double; Lenght: Double; Direction: WordBool): WordBool; safecall;
    function  Get_Length: Double; safecall;
    function  GetDistancePointPoint(X1: Double; Y1: Double; X2: Double; Y2: Double): Double; safecall;
    function  GetDistanceToPoint(X: Double; Y: Double): Double; safecall;
    function  PointOn(T: Double; out X: Double; out Y: Double): WordBool; safecall;
    function  GetMetricLength(T1: Double; T2: Double): Double; safecall;
    function  Get_ParamMin: Double; safecall;
    function  Get_ParamMax: Double; safecall;
    function  Get_IsClosed: WordBool; safecall;
    function  GetNurbsParams(Closed: WordBool; out Points: OleVariant; out Weights: OleVariant; 
                             out Knots: OleVariant; out TMin: Double; out TMax: Double): WordBool; safecall;
    property Length: Double read Get_Length;
    property ParamMin: Double read Get_ParamMin;
    property ParamMax: Double read Get_ParamMax;
    property IsClosed: WordBool read Get_IsClosed;
  end;

// *********************************************************************//
// DispIntf:  ICurve2DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {65C82884-C41B-47A1-8C07-E8820D6718EA}
// *********************************************************************//
  ICurve2DDisp = dispinterface
    ['{65C82884-C41B-47A1-8C07-E8820D6718EA}']
    function  Intersect(const Curve2: ICurve2D): OleVariant; dispid 1;
    function  Tangent(const Curve2: ICurve2D; out Curve1Points: OleVariant; 
                      out Curve2Points: OleVariant): WordBool; dispid 2;
    function  TangentLinePoint(X: Double; Y: Double): OleVariant; dispid 3;
    function  CouplingCurvCurv(const Curve2: ICurve2D; Radius: Double): OleVariant; dispid 4;
    function  PointProjection(X: Double; Y: Double; out Kx: Double; out Ky: Double; out T: Double; 
                              out Angle: Double): WordBool; dispid 5;
    function  CalculatePolygonByStep(Step: Double): OleVariant; dispid 7;
    function  MovePoint(var X: Double; var Y: Double; Lenght: Double; Direction: WordBool): WordBool; dispid 8;
    property Length: Double readonly dispid 9;
    function  GetDistancePointPoint(X1: Double; Y1: Double; X2: Double; Y2: Double): Double; dispid 10;
    function  GetDistanceToPoint(X: Double; Y: Double): Double; dispid 11;
    function  PointOn(T: Double; out X: Double; out Y: Double): WordBool; dispid 12;
    function  GetMetricLength(T1: Double; T2: Double): Double; dispid 14;
    property ParamMin: Double readonly dispid 15;
    property ParamMax: Double readonly dispid 16;
    property IsClosed: WordBool readonly dispid 17;
    function  GetNurbsParams(Closed: WordBool; out Points: OleVariant; out Weights: OleVariant; 
                             out Knots: OleVariant; out TMin: Double; out TMax: Double): WordBool; dispid 18;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPrintJob
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D86880B-C004-475D-8221-B786FD5A228B}
// *********************************************************************//
  IPrintJob = interface(IKompasAPIObject)
    ['{9D86880B-C004-475D-8221-B786FD5A228B}']
    function  Clear: WordBool; safecall;
    function  ShowPreviewWindow: WordBool; safecall;
    function  Load(const FileName: WideString; out Errors: OleVariant): WordBool; safecall;
    function  Save(const FileName: WideString): WordBool; safecall;
    function  Execute(const OutputFileName: WideString): WordBool; safecall;
    function  AddSheets(const FileName: WideString; Sheets: OleVariant; Range: ksSheetsRangeEnum): WordBool; safecall;
    function  Get_SheetsCount: Integer; safecall;
    function  Get_Sheet(Index: Integer): IPrintJob_Sheet; safecall;
    function  RemoveSheets(Index: OleVariant): WordBool; safecall;
    function  Get_PagesCount: Integer; safecall;
    function  GetPageGabarites(out Width: Double; out Height: Double): WordBool; safecall;
    function  GetPagesMapGabarites(out WPageCount: Integer; out HPageCount: Integer): WordBool; safecall;
    function  Get_PagePrintableFlag(WPage: Integer; HPage: Integer): WordBool; safecall;
    procedure Set_PagePrintableFlag(WPage: Integer; HPage: Integer; Result: WordBool); safecall;
    property SheetsCount: Integer read Get_SheetsCount;
    property Sheet[Index: Integer]: IPrintJob_Sheet read Get_Sheet;
    property PagesCount: Integer read Get_PagesCount;
    property PagePrintableFlag[WPage: Integer; HPage: Integer]: WordBool read Get_PagePrintableFlag write Set_PagePrintableFlag;
  end;

// *********************************************************************//
// DispIntf:  IPrintJobDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D86880B-C004-475D-8221-B786FD5A228B}
// *********************************************************************//
  IPrintJobDisp = dispinterface
    ['{9D86880B-C004-475D-8221-B786FD5A228B}']
    function  Clear: WordBool; dispid 1;
    function  ShowPreviewWindow: WordBool; dispid 2;
    function  Load(const FileName: WideString; out Errors: OleVariant): WordBool; dispid 3;
    function  Save(const FileName: WideString): WordBool; dispid 4;
    function  Execute(const OutputFileName: WideString): WordBool; dispid 5;
    function  AddSheets(const FileName: WideString; Sheets: OleVariant; Range: ksSheetsRangeEnum): WordBool; dispid 6;
    property SheetsCount: Integer readonly dispid 7;
    property Sheet[Index: Integer]: IPrintJob_Sheet readonly dispid 8;
    function  RemoveSheets(Index: OleVariant): WordBool; dispid 9;
    property PagesCount: Integer readonly dispid 10;
    function  GetPageGabarites(out Width: Double; out Height: Double): WordBool; dispid 11;
    function  GetPagesMapGabarites(out WPageCount: Integer; out HPageCount: Integer): WordBool; dispid 12;
    property PagePrintableFlag[WPage: Integer; HPage: Integer]: WordBool dispid 13;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPrintJob_Sheet
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0EC985BC-81FC-498E-BF15-03DDC870AA33}
// *********************************************************************//
  IPrintJob_Sheet = interface(IKompasAPIObject)
    ['{0EC985BC-81FC-498E-BF15-03DDC870AA33}']
    function  Get_DocumentName: WideString; safecall;
    function  Get_Number: Integer; safecall;
    function  GetGabarites(out Width: Double; out Height: Double): WordBool; safecall;
    function  Get_Orientation: ksAngleEnum; safecall;
    procedure Set_Orientation(Value: ksAngleEnum); safecall;
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Scale(PVal: Double); safecall;
    function  Get_Scale: Double; safecall;
    function  Get_ClipFlag: WordBool; safecall;
    procedure Set_ClipFlag(Flag: WordBool); safecall;
    function  GetClipFrameGabarites(out Left: Double; out Bottom: Double; out Right: Double; 
                                    out Top: Double): WordBool; safecall;
    function  SetClipFrameGabarites(Left: Double; Bottom: Double; Right: Double; Top: Double): WordBool; safecall;
    property DocumentName: WideString read Get_DocumentName;
    property Number: Integer read Get_Number;
    property Orientation: ksAngleEnum read Get_Orientation write Set_Orientation;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Scale: Double read Get_Scale write Set_Scale;
    property ClipFlag: WordBool read Get_ClipFlag write Set_ClipFlag;
  end;

// *********************************************************************//
// DispIntf:  IPrintJob_SheetDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0EC985BC-81FC-498E-BF15-03DDC870AA33}
// *********************************************************************//
  IPrintJob_SheetDisp = dispinterface
    ['{0EC985BC-81FC-498E-BF15-03DDC870AA33}']
    property DocumentName: WideString readonly dispid 1;
    property Number: Integer readonly dispid 2;
    function  GetGabarites(out Width: Double; out Height: Double): WordBool; dispid 3;
    property Orientation: ksAngleEnum dispid 4;
    property X: Double dispid 5;
    property Y: Double dispid 6;
    property Scale: Double dispid 7;
    property ClipFlag: WordBool dispid 8;
    function  GetClipFrameGabarites(out Left: Double; out Bottom: Double; out Right: Double; 
                                    out Top: Double): WordBool; dispid 9;
    function  SetClipFrameGabarites(Left: Double; Bottom: Double; Right: Double; Top: Double): WordBool; dispid 10;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IKompasDocument2D
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {096E62B3-7184-4998-9925-74BB710D8D8E}
// *********************************************************************//
  IKompasDocument2D = interface(IKompasDocument)
    ['{096E62B3-7184-4998-9925-74BB710D8D8E}']
    function  Get_ViewsAndLayersManager: IViewsAndLayersManager; safecall;
    function  GetDrawingObjectNotifyResult: IDispatch; safecall;
    property ViewsAndLayersManager: IViewsAndLayersManager read Get_ViewsAndLayersManager;
  end;

// *********************************************************************//
// DispIntf:  IKompasDocument2DDisp
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {096E62B3-7184-4998-9925-74BB710D8D8E}
// *********************************************************************//
  IKompasDocument2DDisp = dispinterface
    ['{096E62B3-7184-4998-9925-74BB710D8D8E}']
    property ViewsAndLayersManager: IViewsAndLayersManager readonly dispid 1;
    function  GetDrawingObjectNotifyResult: IDispatch; dispid 2;
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IViewsAndLayersManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A4737593-578B-4187-8CAD-E1056EB5404B}
// *********************************************************************//
  IViewsAndLayersManager = interface(IKompasAPIObject)
    ['{A4737593-578B-4187-8CAD-E1056EB5404B}']
    function  Get_Views: IViews; safecall;
    function  Get_LayerGroups: ILayerGroups; safecall;
    property Views: IViews read Get_Views;
    property LayerGroups: ILayerGroups read Get_LayerGroups;
  end;

// *********************************************************************//
// DispIntf:  IViewsAndLayersManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A4737593-578B-4187-8CAD-E1056EB5404B}
// *********************************************************************//
  IViewsAndLayersManagerDisp = dispinterface
    ['{A4737593-578B-4187-8CAD-E1056EB5404B}']
    property Views: IViews readonly dispid 1;
    property LayerGroups: ILayerGroups readonly dispid 2;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingObjects
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3DD7F97B-59CB-4297-A1BA-04E5A7FFF448}
// *********************************************************************//
  IDrawingObjects = interface(IKompasCollection)
    ['{3DD7F97B-59CB-4297-A1BA-04E5A7FFF448}']
    function  Get_Item(Index: OleVariant): IDrawingObject; safecall;
    property Item[Index: OleVariant]: IDrawingObject read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IDrawingObjectsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3DD7F97B-59CB-4297-A1BA-04E5A7FFF448}
// *********************************************************************//
  IDrawingObjectsDisp = dispinterface
    ['{3DD7F97B-59CB-4297-A1BA-04E5A7FFF448}']
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IViews
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9CD1B5E6-C1A2-4910-8D0C-97080B14AA3D}
// *********************************************************************//
  IViews = interface(IDrawingObjects)
    ['{9CD1B5E6-C1A2-4910-8D0C-97080B14AA3D}']
    function  Get_View(Index: OleVariant): IView; safecall;
    function  Get_ViewByNumber(Numb: Integer): IView; safecall;
    function  Add(ViewType: LtViewType): IView; safecall;
    function  Get_ActiveView: IView; safecall;
    function  AddStandartViews(const FileName: WideString; const ProjectionName: WideString; 
                               ProjectionsTypes: OleVariant; X: Double; Y: Double; Scale: Double; 
                               DX: Double; DY: Double): WordBool; safecall;
    property View[Index: OleVariant]: IView read Get_View;
    property ViewByNumber[Numb: Integer]: IView read Get_ViewByNumber;
    property ActiveView: IView read Get_ActiveView;
  end;

// *********************************************************************//
// DispIntf:  IViewsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9CD1B5E6-C1A2-4910-8D0C-97080B14AA3D}
// *********************************************************************//
  IViewsDisp = dispinterface
    ['{9CD1B5E6-C1A2-4910-8D0C-97080B14AA3D}']
    property View[Index: OleVariant]: IView readonly dispid 1;
    property ViewByNumber[Numb: Integer]: IView readonly dispid 2;
    function  Add(ViewType: LtViewType): IView; dispid 3;
    property ActiveView: IView readonly dispid 4;
    function  AddStandartViews(const FileName: WideString; const ProjectionName: WideString; 
                               ProjectionsTypes: OleVariant; X: Double; Y: Double; Scale: Double; 
                               DX: Double; DY: Double): WordBool; dispid 5;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {07EF021F-11C1-4015-8D87-4DC94A2A71B0}
// *********************************************************************//
  IDrawingObject = interface(IKompasAPIObject)
    ['{07EF021F-11C1-4015-8D87-4DC94A2A71B0}']
    function  Get_DrawingObjectType: DrawingObjectTypeEnum; safecall;
    function  Get_LayerNumber: Integer; safecall;
    procedure Set_LayerNumber(PVal: Integer); safecall;
    function  Get_Temp: WordBool; safecall;
    function  Get_Valid: WordBool; safecall;
    function  Update: WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Get_DrawingObjectParamType: ksDrawingObjectParamTypeEnum; safecall;
    procedure Set_DrawingObjectParamType(PVal: ksDrawingObjectParamTypeEnum); safecall;
    property DrawingObjectType: DrawingObjectTypeEnum read Get_DrawingObjectType;
    property LayerNumber: Integer read Get_LayerNumber write Set_LayerNumber;
    property Temp: WordBool read Get_Temp;
    property Valid: WordBool read Get_Valid;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum read Get_DrawingObjectParamType write Set_DrawingObjectParamType;
  end;

// *********************************************************************//
// DispIntf:  IDrawingObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {07EF021F-11C1-4015-8D87-4DC94A2A71B0}
// *********************************************************************//
  IDrawingObjectDisp = dispinterface
    ['{07EF021F-11C1-4015-8D87-4DC94A2A71B0}']
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IView
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {21A7BA87-1C8B-41B4-8247-CDD593546F37}
// *********************************************************************//
  IView = interface(IDrawingObject)
    ['{21A7BA87-1C8B-41B4-8247-CDD593546F37}']
    procedure Set_Number(PVal: Integer); safecall;
    function  Get_Number: Integer; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    procedure Set_Background(PVal: WordBool); safecall;
    function  Get_Background: WordBool; safecall;
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Current(PVal: WordBool); safecall;
    function  Get_Current: WordBool; safecall;
    procedure Set_Color(PVal: Integer); safecall;
    function  Get_Color: Integer; safecall;
    procedure Set_Comment(const PVal: WideString); safecall;
    function  Get_Comment: WideString; safecall;
    function  Get_ObjectCount: Integer; safecall;
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Scale(PVal: Double); safecall;
    function  Get_Scale: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_ViewType: LtViewType; safecall;
    function  Get_Layers: ILayers; safecall;
    function  Get_Variables: OleVariant; safecall;
    function  Get_Variable(Index: OleVariant): IVariable7; safecall;
    function  Get_VariablesCount: Integer; safecall;
    property Number: Integer read Get_Number write Set_Number;
    property Name: WideString read Get_Name write Set_Name;
    property Background: WordBool read Get_Background write Set_Background;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Current: WordBool read Get_Current write Set_Current;
    property Color: Integer read Get_Color write Set_Color;
    property Comment: WideString read Get_Comment write Set_Comment;
    property ObjectCount: Integer read Get_ObjectCount;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Scale: Double read Get_Scale write Set_Scale;
    property Angle: Double read Get_Angle write Set_Angle;
    property ViewType: LtViewType read Get_ViewType;
    property Layers: ILayers read Get_Layers;
    property Variables: OleVariant read Get_Variables;
    property Variable[Index: OleVariant]: IVariable7 read Get_Variable;
    property VariablesCount: Integer read Get_VariablesCount;
  end;

// *********************************************************************//
// DispIntf:  IViewDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {21A7BA87-1C8B-41B4-8247-CDD593546F37}
// *********************************************************************//
  IViewDisp = dispinterface
    ['{21A7BA87-1C8B-41B4-8247-CDD593546F37}']
    property Number: Integer dispid 1;
    property Name: WideString dispid 2;
    property Background: WordBool dispid 3;
    property Visible: WordBool dispid 4;
    property Current: WordBool dispid 5;
    property Color: Integer dispid 6;
    property Comment: WideString dispid 7;
    property ObjectCount: Integer readonly dispid 8;
    property X: Double dispid 9;
    property Y: Double dispid 10;
    property Scale: Double dispid 11;
    property Angle: Double dispid 12;
    property ViewType: LtViewType readonly dispid 13;
    property Layers: ILayers readonly dispid 14;
    property Variables: OleVariant readonly dispid 15;
    property Variable[Index: OleVariant]: IVariable7 readonly dispid 16;
    property VariablesCount: Integer readonly dispid 17;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayers
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6DC2898-D596-4418-A21A-D15AE07B9A40}
// *********************************************************************//
  ILayers = interface(IDrawingObjects)
    ['{F6DC2898-D596-4418-A21A-D15AE07B9A40}']
    function  Get_Layer(Index: OleVariant): ILayer; safecall;
    function  Get_LayerByNumber(Number: Integer): ILayer; safecall;
    function  Add: ILayer; safecall;
    function  Attach(const PVal: ILayer): WordBool; safecall;
    function  Detach(const PVal: ILayer): WordBool; safecall;
    property Layer[Index: OleVariant]: ILayer read Get_Layer;
    property LayerByNumber[Number: Integer]: ILayer read Get_LayerByNumber;
  end;

// *********************************************************************//
// DispIntf:  ILayersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6DC2898-D596-4418-A21A-D15AE07B9A40}
// *********************************************************************//
  ILayersDisp = dispinterface
    ['{F6DC2898-D596-4418-A21A-D15AE07B9A40}']
    property Layer[Index: OleVariant]: ILayer readonly dispid 1;
    property LayerByNumber[Number: Integer]: ILayer readonly dispid 2;
    function  Add: ILayer; dispid 3;
    function  Attach(const PVal: ILayer): WordBool; dispid 4;
    function  Detach(const PVal: ILayer): WordBool; dispid 5;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9AD76C38-CC48-4901-AEE5-27B48F51563C}
// *********************************************************************//
  ILayer = interface(IDrawingObject)
    ['{9AD76C38-CC48-4901-AEE5-27B48F51563C}']
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    procedure Set_Background(PVal: WordBool); safecall;
    function  Get_Background: WordBool; safecall;
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Current(PVal: WordBool); safecall;
    function  Get_Current: WordBool; safecall;
    procedure Set_Color(PVal: Integer); safecall;
    function  Get_Color: Integer; safecall;
    procedure Set_Comment(const PVal: WideString); safecall;
    function  Get_Comment: WideString; safecall;
    function  Get_ObjectCount: Integer; safecall;
    property Name: WideString read Get_Name write Set_Name;
    property Background: WordBool read Get_Background write Set_Background;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Current: WordBool read Get_Current write Set_Current;
    property Color: Integer read Get_Color write Set_Color;
    property Comment: WideString read Get_Comment write Set_Comment;
    property ObjectCount: Integer read Get_ObjectCount;
  end;

// *********************************************************************//
// DispIntf:  ILayerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9AD76C38-CC48-4901-AEE5-27B48F51563C}
// *********************************************************************//
  ILayerDisp = dispinterface
    ['{9AD76C38-CC48-4901-AEE5-27B48F51563C}']
    property Name: WideString dispid 1;
    property Background: WordBool dispid 2;
    property Visible: WordBool dispid 3;
    property Current: WordBool dispid 4;
    property Color: Integer dispid 5;
    property Comment: WideString dispid 6;
    property ObjectCount: Integer readonly dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IVariable7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8BAB52D9-8EF6-43A6-A1B8-AF42D5961A94}
// *********************************************************************//
  IVariable7 = interface(IKompasAPIObject)
    ['{8BAB52D9-8EF6-43A6-A1B8-AF42D5961A94}']
    function  Get_Name: WideString; safecall;
    procedure Set_Note(const PVal: WideString); safecall;
    function  Get_Note: WideString; safecall;
    procedure Set_Value(PVal: Double); safecall;
    function  Get_Value: Double; safecall;
    procedure Set_External(PVal: WordBool); safecall;
    function  Get_External: WordBool; safecall;
    procedure Set_Information(PVal: WordBool); safecall;
    function  Get_Information: WordBool; safecall;
    procedure Set_Expression(const PVal: WideString); safecall;
    function  Get_Expression: WideString; safecall;
    function  Get_ParameterNote: WideString; safecall;
    function  Get_DisplayName: WideString; safecall;
    function  Get_LinkVariableName: WideString; safecall;
    function  Get_LinkDocumentName: WideString; safecall;
    function  SetLink(const DocumentName: WideString; const VariableName: WideString): WordBool; safecall;
    function  Delete: WordBool; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    property Name: WideString read Get_Name;
    property Note: WideString read Get_Note write Set_Note;
    property Value: Double read Get_Value write Set_Value;
    property External: WordBool read Get_External write Set_External;
    property Information: WordBool read Get_Information write Set_Information;
    property Expression: WideString read Get_Expression write Set_Expression;
    property ParameterNote: WideString read Get_ParameterNote;
    property DisplayName: WideString read Get_DisplayName;
    property LinkVariableName: WideString read Get_LinkVariableName;
    property LinkDocumentName: WideString read Get_LinkDocumentName;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
  end;

// *********************************************************************//
// DispIntf:  IVariable7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8BAB52D9-8EF6-43A6-A1B8-AF42D5961A94}
// *********************************************************************//
  IVariable7Disp = dispinterface
    ['{8BAB52D9-8EF6-43A6-A1B8-AF42D5961A94}']
    property Name: WideString readonly dispid 1;
    property Note: WideString dispid 2;
    property Value: Double dispid 3;
    property External: WordBool dispid 4;
    property Information: WordBool dispid 5;
    property Expression: WideString dispid 6;
    property ParameterNote: WideString readonly dispid 7;
    property DisplayName: WideString readonly dispid 8;
    property LinkVariableName: WideString readonly dispid 9;
    property LinkDocumentName: WideString readonly dispid 10;
    function  SetLink(const DocumentName: WideString; const VariableName: WideString): WordBool; dispid 11;
    function  Delete: WordBool; dispid 12;
    property ReadOnly: WordBool dispid 13;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayerGroups
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DBFF6D98-8F79-453E-9B8B-81E40A6D8027}
// *********************************************************************//
  ILayerGroups = interface(IKompasCollection)
    ['{DBFF6D98-8F79-453E-9B8B-81E40A6D8027}']
    function  Get_Item(Index: OleVariant): ILayerGroup; safecall;
    function  Add(const Owner: IView; Dinamic: WordBool): ILayerGroup; safecall;
    function  Attach(const PGroup: ILayerGroup): WordBool; safecall;
    function  Detach(const PGroup: ILayerGroup): WordBool; safecall;
    property Item[Index: OleVariant]: ILayerGroup read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ILayerGroupsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DBFF6D98-8F79-453E-9B8B-81E40A6D8027}
// *********************************************************************//
  ILayerGroupsDisp = dispinterface
    ['{DBFF6D98-8F79-453E-9B8B-81E40A6D8027}']
    property Item[Index: OleVariant]: ILayerGroup readonly dispid 0; default;
    function  Add(const Owner: IView; Dinamic: WordBool): ILayerGroup; dispid 1;
    function  Attach(const PGroup: ILayerGroup): WordBool; dispid 2;
    function  Detach(const PGroup: ILayerGroup): WordBool; dispid 3;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayerGroup
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {265BBB5A-7B8A-4AA5-A0BB-FF64D23BE62B}
// *********************************************************************//
  ILayerGroup = interface(IKompasAPIObject)
    ['{265BBB5A-7B8A-4AA5-A0BB-FF64D23BE62B}']
    function  Get_OwnerGroup: ILayerGroup; safecall;
    function  Get_LayerGroups: ILayerGroups; safecall;
    function  Get_Layers: ILayers; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    function  Get_LayerFilterConditions: ILayerFilterConditions; safecall;
    function  GetLayerStates(LayerIndex: OleVariant; out Visible: WordBool; 
                             out Background: WordBool; out Curent: WordBool; out Color: Integer): WordBool; safecall;
    function  SetLayerStates(LayerIndex: OleVariant; Visible: WordBool; Background: WordBool; 
                             Curent: WordBool; Color: Integer): WordBool; safecall;
    procedure Set_Current(PVal: WordBool); safecall;
    function  Get_Current: WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Get_OwnerView: IView; safecall;
    procedure Set_OwnerView(const PVal: IView); safecall;
    function  Get_UniqueId: Double; safecall;
    property OwnerGroup: ILayerGroup read Get_OwnerGroup;
    property LayerGroups: ILayerGroups read Get_LayerGroups;
    property Layers: ILayers read Get_Layers;
    property Name: WideString read Get_Name write Set_Name;
    property LayerFilterConditions: ILayerFilterConditions read Get_LayerFilterConditions;
    property Current: WordBool read Get_Current write Set_Current;
    property OwnerView: IView read Get_OwnerView write Set_OwnerView;
    property UniqueId: Double read Get_UniqueId;
  end;

// *********************************************************************//
// DispIntf:  ILayerGroupDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {265BBB5A-7B8A-4AA5-A0BB-FF64D23BE62B}
// *********************************************************************//
  ILayerGroupDisp = dispinterface
    ['{265BBB5A-7B8A-4AA5-A0BB-FF64D23BE62B}']
    property OwnerGroup: ILayerGroup readonly dispid 1;
    property LayerGroups: ILayerGroups readonly dispid 2;
    property Layers: ILayers readonly dispid 3;
    property Name: WideString dispid 4;
    property LayerFilterConditions: ILayerFilterConditions readonly dispid 5;
    function  GetLayerStates(LayerIndex: OleVariant; out Visible: WordBool; 
                             out Background: WordBool; out Curent: WordBool; out Color: Integer): WordBool; dispid 6;
    function  SetLayerStates(LayerIndex: OleVariant; Visible: WordBool; Background: WordBool; 
                             Curent: WordBool; Color: Integer): WordBool; dispid 7;
    property Current: WordBool dispid 8;
    function  Delete: WordBool; dispid 9;
    property OwnerView: IView dispid 10;
    property UniqueId: Double readonly dispid 11;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayerFilterConditions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BCA22E27-AB60-4BA6-87EE-92158AA6D366}
// *********************************************************************//
  ILayerFilterConditions = interface(IKompasCollection)
    ['{BCA22E27-AB60-4BA6-87EE-92158AA6D366}']
    function  Get_Item(Index: OleVariant): ILayerFilterCondition; safecall;
    function  Add: ILayerFilterCondition; safecall;
    property Item[Index: OleVariant]: ILayerFilterCondition read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  ILayerFilterConditionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BCA22E27-AB60-4BA6-87EE-92158AA6D366}
// *********************************************************************//
  ILayerFilterConditionsDisp = dispinterface
    ['{BCA22E27-AB60-4BA6-87EE-92158AA6D366}']
    property Item[Index: OleVariant]: ILayerFilterCondition readonly dispid 0; default;
    function  Add: ILayerFilterCondition; dispid 2;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILayerFilterCondition
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D743BC12-82A9-4E8F-85B2-7154A356ACC0}
// *********************************************************************//
  ILayerFilterCondition = interface(IKompasAPIObject)
    ['{D743BC12-82A9-4E8F-85B2-7154A356ACC0}']
    procedure Set_Number(const PVal: WideString); safecall;
    function  Get_Number: WideString; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    procedure Set_Background(PVal: FilterCondotionStateEnum); safecall;
    function  Get_Background: FilterCondotionStateEnum; safecall;
    procedure Set_Visible(PVal: FilterCondotionStateEnum); safecall;
    function  Get_Visible: FilterCondotionStateEnum; safecall;
    procedure Set_HaveObjects(PVal: FilterCondotionStateEnum); safecall;
    function  Get_HaveObjects: FilterCondotionStateEnum; safecall;
    procedure Set_Color(PVal: Integer); safecall;
    function  Get_Color: Integer; safecall;
    procedure Set_Comment(const PVal: WideString); safecall;
    function  Get_Comment: WideString; safecall;
    property Number: WideString read Get_Number write Set_Number;
    property Name: WideString read Get_Name write Set_Name;
    property Background: FilterCondotionStateEnum read Get_Background write Set_Background;
    property Visible: FilterCondotionStateEnum read Get_Visible write Set_Visible;
    property HaveObjects: FilterCondotionStateEnum read Get_HaveObjects write Set_HaveObjects;
    property Color: Integer read Get_Color write Set_Color;
    property Comment: WideString read Get_Comment write Set_Comment;
  end;

// *********************************************************************//
// DispIntf:  ILayerFilterConditionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D743BC12-82A9-4E8F-85B2-7154A356ACC0}
// *********************************************************************//
  ILayerFilterConditionDisp = dispinterface
    ['{D743BC12-82A9-4E8F-85B2-7154A356ACC0}']
    property Number: WideString dispid 1;
    property Name: WideString dispid 2;
    property Background: FilterCondotionStateEnum dispid 3;
    property Visible: FilterCondotionStateEnum dispid 4;
    property HaveObjects: FilterCondotionStateEnum dispid 5;
    property Color: Integer dispid 6;
    property Comment: WideString dispid 7;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IKompasDocument3D
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7B60E769-06C3-4FDC-9677-7B5EF5180308}
// *********************************************************************//
  IKompasDocument3D = interface(IKompasDocument)
    ['{7B60E769-06C3-4FDC-9677-7B5EF5180308}']
    function  Get_TopPart: IPart7; safecall;
    procedure Set_HideAllPlanes(PVal: WordBool); safecall;
    function  Get_HideAllPlanes: WordBool; safecall;
    procedure Set_HideAllAxis(PVal: WordBool); safecall;
    function  Get_HideAllAxis: WordBool; safecall;
    procedure Set_HideAllSketches(PVal: WordBool); safecall;
    function  Get_HideAllSketches: WordBool; safecall;
    procedure Set_HideAllPlaces(PVal: WordBool); safecall;
    function  Get_HideAllPlaces: WordBool; safecall;
    procedure Set_HideAllSurfaces(PVal: WordBool); safecall;
    function  Get_HideAllSurfaces: WordBool; safecall;
    procedure Set_HideAllThreads(PVal: WordBool); safecall;
    function  Get_HideAllThreads: WordBool; safecall;
    procedure Set_HideAllCurves(PVal: WordBool); safecall;
    function  Get_HideAllCurves: WordBool; safecall;
    procedure Set_HideAllControlPoints(PVal: WordBool); safecall;
    function  Get_HideAllControlPoints: WordBool; safecall;
    procedure Set_Perspective(PVal: WordBool); safecall;
    function  Get_Perspective: WordBool; safecall;
    procedure Set_DrawMode(PVal: Integer); safecall;
    function  Get_DrawMode: Integer; safecall;
    procedure Set_ShadedWireframe(PVal: WordBool); safecall;
    function  Get_ShadedWireframe: WordBool; safecall;
    procedure Set_CreateObjectsInCurrentLocalCS(PVal: WordBool); safecall;
    function  Get_CreateObjectsInCurrentLocalCS: WordBool; safecall;
    procedure Set_HideAllDimensions(PVal: WordBool); safecall;
    function  Get_HideAllDimensions: WordBool; safecall;
    procedure Set_HideAllDesignations(PVal: WordBool); safecall;
    function  Get_HideAllDesignations: WordBool; safecall;
    procedure Set_HideAllAuxiliaryGeom(PVal: WordBool); safecall;
    function  Get_HideAllAuxiliaryGeom: WordBool; safecall;
    procedure Set_HideInComponentsMode(PVal: WordBool); safecall;
    function  Get_HideInComponentsMode: WordBool; safecall;
    function  Get_SelectionManager: ISelectionManager; safecall;
    function  Get_ChooseManager: IChooseManager; safecall;
    function  CreateAttrEx(AttrID: Double; const Libname: WideString; Objects: OleVariant; 
                           const SourcePart: IPart7): IAttribute; safecall;
    function  Get_AttributesEx(Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; 
                               Numb: Double; Objects: OleVariant; const SourcePart: IPart7): OleVariant; safecall;
    property TopPart: IPart7 read Get_TopPart;
    property HideAllPlanes: WordBool read Get_HideAllPlanes write Set_HideAllPlanes;
    property HideAllAxis: WordBool read Get_HideAllAxis write Set_HideAllAxis;
    property HideAllSketches: WordBool read Get_HideAllSketches write Set_HideAllSketches;
    property HideAllPlaces: WordBool read Get_HideAllPlaces write Set_HideAllPlaces;
    property HideAllSurfaces: WordBool read Get_HideAllSurfaces write Set_HideAllSurfaces;
    property HideAllThreads: WordBool read Get_HideAllThreads write Set_HideAllThreads;
    property HideAllCurves: WordBool read Get_HideAllCurves write Set_HideAllCurves;
    property HideAllControlPoints: WordBool read Get_HideAllControlPoints write Set_HideAllControlPoints;
    property Perspective: WordBool read Get_Perspective write Set_Perspective;
    property DrawMode: Integer read Get_DrawMode write Set_DrawMode;
    property ShadedWireframe: WordBool read Get_ShadedWireframe write Set_ShadedWireframe;
    property CreateObjectsInCurrentLocalCS: WordBool read Get_CreateObjectsInCurrentLocalCS write Set_CreateObjectsInCurrentLocalCS;
    property HideAllDimensions: WordBool read Get_HideAllDimensions write Set_HideAllDimensions;
    property HideAllDesignations: WordBool read Get_HideAllDesignations write Set_HideAllDesignations;
    property HideAllAuxiliaryGeom: WordBool read Get_HideAllAuxiliaryGeom write Set_HideAllAuxiliaryGeom;
    property HideInComponentsMode: WordBool read Get_HideInComponentsMode write Set_HideInComponentsMode;
    property SelectionManager: ISelectionManager read Get_SelectionManager;
    property ChooseManager: IChooseManager read Get_ChooseManager;
    property AttributesEx[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; Numb: Double; 
                          Objects: OleVariant; const SourcePart: IPart7]: OleVariant read Get_AttributesEx;
  end;

// *********************************************************************//
// DispIntf:  IKompasDocument3DDisp
// Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7B60E769-06C3-4FDC-9677-7B5EF5180308}
// *********************************************************************//
  IKompasDocument3DDisp = dispinterface
    ['{7B60E769-06C3-4FDC-9677-7B5EF5180308}']
    property TopPart: IPart7 readonly dispid 5002;
    property HideAllPlanes: WordBool dispid 5003;
    property HideAllAxis: WordBool dispid 5004;
    property HideAllSketches: WordBool dispid 5005;
    property HideAllPlaces: WordBool dispid 5006;
    property HideAllSurfaces: WordBool dispid 5007;
    property HideAllThreads: WordBool dispid 5008;
    property HideAllCurves: WordBool dispid 5009;
    property HideAllControlPoints: WordBool dispid 5010;
    property Perspective: WordBool dispid 5011;
    property DrawMode: Integer dispid 5012;
    property ShadedWireframe: WordBool dispid 5013;
    property CreateObjectsInCurrentLocalCS: WordBool dispid 5014;
    property HideAllDimensions: WordBool dispid 5015;
    property HideAllDesignations: WordBool dispid 5016;
    property HideAllAuxiliaryGeom: WordBool dispid 5017;
    property HideInComponentsMode: WordBool dispid 5018;
    property SelectionManager: ISelectionManager readonly dispid 5019;
    property ChooseManager: IChooseManager readonly dispid 5020;
    function  CreateAttrEx(AttrID: Double; const Libname: WideString; Objects: OleVariant; 
                           const SourcePart: IPart7): IAttribute; dispid 5021;
    property AttributesEx[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; Numb: Double; 
                          Objects: OleVariant; const SourcePart: IPart7]: OleVariant readonly dispid 5022;
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IModelObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E37256D4-9021-47AC-8FAF-3713FB2A50C3}
// *********************************************************************//
  IModelObject = interface(IKompasAPIObject)
    ['{E37256D4-9021-47AC-8FAF-3713FB2A50C3}']
    function  Get_Name: WideString; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    procedure Set_Hidden(PVal: WordBool); safecall;
    function  Get_Hidden: WordBool; safecall;
    function  Update: WordBool; safecall;
    function  Get_Valid: WordBool; safecall;
    function  Get_Part: IPart7; safecall;
    function  Get_ModelObjectType: ksObj3dTypeEnum; safecall;
    function  Get_Owner: IFeature7; safecall;
    property Name: WideString read Get_Name write Set_Name;
    property Hidden: WordBool read Get_Hidden write Set_Hidden;
    property Valid: WordBool read Get_Valid;
    property Part: IPart7 read Get_Part;
    property ModelObjectType: ksObj3dTypeEnum read Get_ModelObjectType;
    property Owner: IFeature7 read Get_Owner;
  end;

// *********************************************************************//
// DispIntf:  IModelObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E37256D4-9021-47AC-8FAF-3713FB2A50C3}
// *********************************************************************//
  IModelObjectDisp = dispinterface
    ['{E37256D4-9021-47AC-8FAF-3713FB2A50C3}']
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPart7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FA4A5FDE-A08C-4F5A-8C04-98395BA44307}
// *********************************************************************//
  IPart7 = interface(IModelObject)
    ['{FA4A5FDE-A08C-4F5A-8C04-98395BA44307}']
    function  Get_Marking: WideString; safecall;
    procedure Set_Marking(const PVal: WideString); safecall;
    function  Get_FileName: WideString; safecall;
    procedure Set_FileName(const PVal: WideString); safecall;
    procedure Set_Standard(PVal: WordBool); safecall;
    function  Get_Standard: WordBool; safecall;
    procedure Set_Fixed(PVal: WordBool); safecall;
    function  Get_Fixed: WordBool; safecall;
    function  Get_Detail: WordBool; safecall;
    function  Get_Mass: Double; safecall;
    function  Get_Density: Double; safecall;
    function  Get_Material: WideString; safecall;
    function  SetMaterial(const Name: WideString; Density: Double): WordBool; safecall;
    function  Get_Parts: IParts7; safecall;
    function  Get_VariableTable: IVariableTable; safecall;
    function  Get_PartsEx(PartCollectionType: OleVariant): OleVariant; safecall;
    function  Get_InstanceCount(const Part: IPart7): Integer; safecall;
    function  SelectByPoint(Objects: OleVariant; X: Double; Y: Double; Z: Double): OleVariant; safecall;
    function  TransferObjects(Objects: OleVariant; const Lcs: ILocalCoordinateSystem; 
                              holdPosition: WordBool): WordBool; safecall;
    function  Load(Full: WordBool): WordBool; safecall;
    function  Unload(Full: WordBool): WordBool; safecall;
    function  Get_LoadState: ksLoadStateEnum; safecall;
    function  Get_DefaultObject(Type_: ksObj3dTypeEnum): IModelObject; safecall;
    property Marking: WideString read Get_Marking write Set_Marking;
    property FileName: WideString read Get_FileName write Set_FileName;
    property Standard: WordBool read Get_Standard write Set_Standard;
    property Fixed: WordBool read Get_Fixed write Set_Fixed;
    property Detail: WordBool read Get_Detail;
    property Mass: Double read Get_Mass;
    property Density: Double read Get_Density;
    property Material: WideString read Get_Material;
    property Parts: IParts7 read Get_Parts;
    property VariableTable: IVariableTable read Get_VariableTable;
    property PartsEx[PartCollectionType: OleVariant]: OleVariant read Get_PartsEx;
    property InstanceCount[const Part: IPart7]: Integer read Get_InstanceCount;
    property LoadState: ksLoadStateEnum read Get_LoadState;
    property DefaultObject[Type_: ksObj3dTypeEnum]: IModelObject read Get_DefaultObject;
  end;

// *********************************************************************//
// DispIntf:  IPart7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FA4A5FDE-A08C-4F5A-8C04-98395BA44307}
// *********************************************************************//
  IPart7Disp = dispinterface
    ['{FA4A5FDE-A08C-4F5A-8C04-98395BA44307}']
    property Marking: WideString dispid 1;
    property FileName: WideString dispid 2;
    property Standard: WordBool dispid 3;
    property Fixed: WordBool dispid 4;
    property Detail: WordBool readonly dispid 5;
    property Mass: Double readonly dispid 6;
    property Density: Double readonly dispid 7;
    property Material: WideString readonly dispid 8;
    function  SetMaterial(const Name: WideString; Density: Double): WordBool; dispid 9;
    property Parts: IParts7 readonly dispid 10;
    property VariableTable: IVariableTable readonly dispid 11;
    property PartsEx[PartCollectionType: OleVariant]: OleVariant readonly dispid 12;
    property InstanceCount[const Part: IPart7]: Integer readonly dispid 13;
    function  SelectByPoint(Objects: OleVariant; X: Double; Y: Double; Z: Double): OleVariant; dispid 14;
    function  TransferObjects(Objects: OleVariant; const Lcs: ILocalCoordinateSystem; 
                              holdPosition: WordBool): WordBool; dispid 15;
    function  Load(Full: WordBool): WordBool; dispid 16;
    function  Unload(Full: WordBool): WordBool; dispid 17;
    property LoadState: ksLoadStateEnum readonly dispid 18;
    property DefaultObject[Type_: ksObj3dTypeEnum]: IModelObject readonly dispid 19;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IFeature7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EF4343FA-985D-4FE9-AD5F-439BC8F92958}
// *********************************************************************//
  IFeature7 = interface(IDispatch)
    ['{EF4343FA-985D-4FE9-AD5F-439BC8F92958}']
    function  Get_Name: WideString; safecall;
    function  Get_UpdateStamp: Integer; safecall;
    function  Get_OwnerFeature: IFeature7; safecall;
    function  Get_Valid: WordBool; safecall;
    procedure Set_Excluded(PVal: WordBool); safecall;
    function  Get_Excluded: WordBool; safecall;
    function  Get_ModelObjects(ObjType: OleVariant): OleVariant; safecall;
    function  Get_FeatureType: ksObj3dTypeEnum; safecall;
    function  Delete: WordBool; safecall;
    function  Get_SubFeatures(TreeType: ksTreeTypeEnum; Through: WordBool; LibObject: WordBool): OleVariant; safecall;
    function  Get_ResultBodies: OleVariant; safecall;
    property Name: WideString read Get_Name;
    property UpdateStamp: Integer read Get_UpdateStamp;
    property OwnerFeature: IFeature7 read Get_OwnerFeature;
    property Valid: WordBool read Get_Valid;
    property Excluded: WordBool read Get_Excluded write Set_Excluded;
    property ModelObjects[ObjType: OleVariant]: OleVariant read Get_ModelObjects;
    property FeatureType: ksObj3dTypeEnum read Get_FeatureType;
    property SubFeatures[TreeType: ksTreeTypeEnum; Through: WordBool; LibObject: WordBool]: OleVariant read Get_SubFeatures;
    property ResultBodies: OleVariant read Get_ResultBodies;
  end;

// *********************************************************************//
// DispIntf:  IFeature7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EF4343FA-985D-4FE9-AD5F-439BC8F92958}
// *********************************************************************//
  IFeature7Disp = dispinterface
    ['{EF4343FA-985D-4FE9-AD5F-439BC8F92958}']
    property Name: WideString readonly dispid 2001;
    property UpdateStamp: Integer readonly dispid 2002;
    property OwnerFeature: IFeature7 readonly dispid 2003;
    property Valid: WordBool readonly dispid 2004;
    property Excluded: WordBool dispid 2005;
    property ModelObjects[ObjType: OleVariant]: OleVariant readonly dispid 2006;
    property FeatureType: ksObj3dTypeEnum readonly dispid 2007;
    function  Delete: WordBool; dispid 2008;
    property SubFeatures[TreeType: ksTreeTypeEnum; Through: WordBool; LibObject: WordBool]: OleVariant readonly dispid 2009;
    property ResultBodies: OleVariant readonly dispid 2010;
  end;

// *********************************************************************//
// Interface: IModelObjects
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {125CB096-639E-479F-98DE-F27FAB23838A}
// *********************************************************************//
  IModelObjects = interface(IKompasCollection)
    ['{125CB096-639E-479F-98DE-F27FAB23838A}']
    function  Get_Item(Index: OleVariant): IModelObject; safecall;
    property Item[Index: OleVariant]: IModelObject read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IModelObjectsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {125CB096-639E-479F-98DE-F27FAB23838A}
// *********************************************************************//
  IModelObjectsDisp = dispinterface
    ['{125CB096-639E-479F-98DE-F27FAB23838A}']
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IParts7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {42F8FCEF-E56F-466C-8814-BEBAC0719AE6}
// *********************************************************************//
  IParts7 = interface(IModelObjects)
    ['{42F8FCEF-E56F-466C-8814-BEBAC0719AE6}']
    function  Get_Part(Index: OleVariant): IPart7; safecall;
    function  AddFromFile(const FileName: WideString; ExternalFile: WordBool; Redraw: WordBool): IPart7; safecall;
    function  Add(const FileName: WideString; const Plane: IModelObject): IPart7; safecall;
    property Part[Index: OleVariant]: IPart7 read Get_Part;
  end;

// *********************************************************************//
// DispIntf:  IParts7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {42F8FCEF-E56F-466C-8814-BEBAC0719AE6}
// *********************************************************************//
  IParts7Disp = dispinterface
    ['{42F8FCEF-E56F-466C-8814-BEBAC0719AE6}']
    property Part[Index: OleVariant]: IPart7 readonly dispid 1;
    function  AddFromFile(const FileName: WideString; ExternalFile: WordBool; Redraw: WordBool): IPart7; dispid 2;
    function  Add(const FileName: WideString; const Plane: IModelObject): IPart7; dispid 3;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IVariableTable
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2B8B154E-ED76-4FF0-B3E4-FEE691D014A4}
// *********************************************************************//
  IVariableTable = interface(IKompasAPIObject)
    ['{2B8B154E-ED76-4FF0-B3E4-FEE691D014A4}']
    function  Get_RowsCount: Integer; safecall;
    function  Get_ColumnsCount: Integer; safecall;
    function  Get_VarName(Column: Integer): WideString; safecall;
    procedure Set_VarName(Column: Integer; const Val: WideString); safecall;
    function  Get_VarNames: OleVariant; safecall;
    procedure Set_VarNames(Val: OleVariant); safecall;
    function  Get_Comment(Val: Integer): WideString; safecall;
    procedure Set_Comment(Val: Integer; const BstrVal: WideString); safecall;
    function  Get_TableRow(Index: OleVariant): OleVariant; safecall;
    procedure Set_TableRow(Index: OleVariant; Val: OleVariant); safecall;
    function  Get_Cell(RowIndexVal: Integer; ColIndex: Integer): Double; safecall;
    procedure Set_Cell(RowIndexVal: Integer; ColIndex: Integer; Val: Double); safecall;
    function  ApplyVars(Index: OleVariant): WordBool; safecall;
    function  Get_VisualTable(WinVal: OLE_HANDLE; Select: WordBool): Integer; safecall;
    function  AddColumn(const Val: WideString): Integer; safecall;
    function  DeleteColumn(ColVal: OleVariant): WordBool; safecall;
    function  AddRow(const Val: WideString): Integer; safecall;
    function  DeleteRow(RowVal: OleVariant): WordBool; safecall;
    function  Clear: WordBool; safecall;
    function  FindColumnIndex(const Val: WideString): Integer; safecall;
    property RowsCount: Integer read Get_RowsCount;
    property ColumnsCount: Integer read Get_ColumnsCount;
    property VarName[Column: Integer]: WideString read Get_VarName write Set_VarName;
    property VarNames: OleVariant read Get_VarNames write Set_VarNames;
    property Comment[Val: Integer]: WideString read Get_Comment write Set_Comment;
    property TableRow[Index: OleVariant]: OleVariant read Get_TableRow write Set_TableRow;
    property Cell[RowIndexVal: Integer; ColIndex: Integer]: Double read Get_Cell write Set_Cell;
    property VisualTable[WinVal: OLE_HANDLE; Select: WordBool]: Integer read Get_VisualTable;
  end;

// *********************************************************************//
// DispIntf:  IVariableTableDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2B8B154E-ED76-4FF0-B3E4-FEE691D014A4}
// *********************************************************************//
  IVariableTableDisp = dispinterface
    ['{2B8B154E-ED76-4FF0-B3E4-FEE691D014A4}']
    property RowsCount: Integer readonly dispid 7001;
    property ColumnsCount: Integer readonly dispid 7002;
    property VarName[Column: Integer]: WideString dispid 7003;
    property VarNames: OleVariant dispid 7004;
    property Comment[Val: Integer]: WideString dispid 7005;
    property TableRow[Index: OleVariant]: OleVariant dispid 7006;
    property Cell[RowIndexVal: Integer; ColIndex: Integer]: Double dispid 7007;
    function  ApplyVars(Index: OleVariant): WordBool; dispid 7008;
    property VisualTable[WinVal: OLE_HANDLE; Select: WordBool]: Integer readonly dispid 7009;
    function  AddColumn(const Val: WideString): Integer; dispid 7010;
    function  DeleteColumn(ColVal: OleVariant): WordBool; dispid 7011;
    function  AddRow(const Val: WideString): Integer; dispid 7012;
    function  DeleteRow(RowVal: OleVariant): WordBool; dispid 7013;
    function  Clear: WordBool; dispid 7014;
    function  FindColumnIndex(const Val: WideString): Integer; dispid 7015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D71AEDBE-01D4-4C7D-96DC-94981F2A1C37}
// *********************************************************************//
  IPoint3D = interface(IModelObject)
    ['{D71AEDBE-01D4-4C7D-96DC-94981F2A1C37}']
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Z(PVal: Double); safecall;
    function  Get_Z: Double; safecall;
    function  SetAssociationObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_AssociationObject: IModelObject; safecall;
    procedure Set_Symbol(PVal: ksAnnotationSymbolEnum); safecall;
    function  Get_Symbol: ksAnnotationSymbolEnum; safecall;
    procedure Set_ParameterType(PVal: ksPoint3DTypeEnum); safecall;
    function  Get_ParameterType: ksPoint3DTypeEnum; safecall;
    function  Get_Parameters: IKompasAPIObject; safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Z: Double read Get_Z write Set_Z;
    property AssociationObject: IModelObject read Get_AssociationObject;
    property Symbol: ksAnnotationSymbolEnum read Get_Symbol write Set_Symbol;
    property ParameterType: ksPoint3DTypeEnum read Get_ParameterType write Set_ParameterType;
    property Parameters: IKompasAPIObject read Get_Parameters;
  end;

// *********************************************************************//
// DispIntf:  IPoint3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D71AEDBE-01D4-4C7D-96DC-94981F2A1C37}
// *********************************************************************//
  IPoint3DDisp = dispinterface
    ['{D71AEDBE-01D4-4C7D-96DC-94981F2A1C37}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Z: Double dispid 3;
    function  SetAssociationObject(const NewVal: IModelObject): WordBool; dispid 4;
    property AssociationObject: IModelObject readonly dispid 5;
    property Symbol: ksAnnotationSymbolEnum dispid 6;
    property ParameterType: ksPoint3DTypeEnum dispid 7;
    property Parameters: IKompasAPIObject readonly dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILocalCoordinateSystem
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BA6395F5-3506-4483-8864-4EEC220AF316}
// *********************************************************************//
  ILocalCoordinateSystem = interface(IPoint3D)
    ['{BA6395F5-3506-4483-8864-4EEC220AF316}']
    function  SetDisplacementByAxis(Axis: ksObj3dTypeEnum; NewVal: Double): WordBool; safecall;
    procedure Set_OrientationType(Result: ksOrientationTypeEnum); safecall;
    function  Get_OrientationType: ksOrientationTypeEnum; safecall;
    function  ReadFromFile(const FileName: WideString): WordBool; safecall;
    function  WriteToFile(const FileName: WideString): WordBool; safecall;
    function  SetStartingOrientation: WordBool; safecall;
    function  GetVector(Axis: ksObj3dTypeEnum; out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  Get_LocalCSParameters: IKompasAPIObject; safecall;
    procedure Set_Current(Result: WordBool); safecall;
    function  Get_Current: WordBool; safecall;
    function  Get_DefaultObject(Val: ksObj3dTypeEnum): IModelObject; safecall;
    function  InitByMatrix3D(mtr: OleVariant): WordBool; safecall;
    property OrientationType: ksOrientationTypeEnum read Get_OrientationType write Set_OrientationType;
    property LocalCSParameters: IKompasAPIObject read Get_LocalCSParameters;
    property Current: WordBool read Get_Current write Set_Current;
    property DefaultObject[Val: ksObj3dTypeEnum]: IModelObject read Get_DefaultObject;
  end;

// *********************************************************************//
// DispIntf:  ILocalCoordinateSystemDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BA6395F5-3506-4483-8864-4EEC220AF316}
// *********************************************************************//
  ILocalCoordinateSystemDisp = dispinterface
    ['{BA6395F5-3506-4483-8864-4EEC220AF316}']
    function  SetDisplacementByAxis(Axis: ksObj3dTypeEnum; NewVal: Double): WordBool; dispid 3001;
    property OrientationType: ksOrientationTypeEnum dispid 3002;
    function  ReadFromFile(const FileName: WideString): WordBool; dispid 3003;
    function  WriteToFile(const FileName: WideString): WordBool; dispid 3004;
    function  SetStartingOrientation: WordBool; dispid 3005;
    function  GetVector(Axis: ksObj3dTypeEnum; out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3006;
    property LocalCSParameters: IKompasAPIObject readonly dispid 3007;
    property Current: WordBool dispid 3008;
    property DefaultObject[Val: ksObj3dTypeEnum]: IModelObject readonly dispid 3009;
    function  InitByMatrix3D(mtr: OleVariant): WordBool; dispid 3010;
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Z: Double dispid 3;
    function  SetAssociationObject(const NewVal: IModelObject): WordBool; dispid 4;
    property AssociationObject: IModelObject readonly dispid 5;
    property Symbol: ksAnnotationSymbolEnum dispid 6;
    property ParameterType: ksPoint3DTypeEnum dispid 7;
    property Parameters: IKompasAPIObject readonly dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISelectionManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E6DF688C-5B23-436B-A027-A96BFD5484CC}
// *********************************************************************//
  ISelectionManager = interface(IKompasAPIObject)
    ['{E6DF688C-5B23-436B-A027-A96BFD5484CC}']
    function  Select(Objects: OleVariant): WordBool; safecall;
    function  Unselect(Objects: OleVariant): WordBool; safecall;
    function  UnselectAll: WordBool; safecall;
    function  IsSelected(const Object_: IKompasAPIObject): WordBool; safecall;
    function  Get_SelectedObjects: OleVariant; safecall;
    property SelectedObjects: OleVariant read Get_SelectedObjects;
  end;

// *********************************************************************//
// DispIntf:  ISelectionManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E6DF688C-5B23-436B-A027-A96BFD5484CC}
// *********************************************************************//
  ISelectionManagerDisp = dispinterface
    ['{E6DF688C-5B23-436B-A027-A96BFD5484CC}']
    function  Select(Objects: OleVariant): WordBool; dispid 1;
    function  Unselect(Objects: OleVariant): WordBool; dispid 2;
    function  UnselectAll: WordBool; dispid 3;
    function  IsSelected(const Object_: IKompasAPIObject): WordBool; dispid 4;
    property SelectedObjects: OleVariant readonly dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IChooseManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E2D9EAA6-F88C-4ADB-AC32-854E32E9FEE1}
// *********************************************************************//
  IChooseManager = interface(IKompasAPIObject)
    ['{E2D9EAA6-F88C-4ADB-AC32-854E32E9FEE1}']
    function  Choose(Objects: OleVariant): WordBool; safecall;
    function  Unchoose(Objects: OleVariant): WordBool; safecall;
    function  UnchooseAll: WordBool; safecall;
    function  IsChoosen(const Object_: IKompasAPIObject): WordBool; safecall;
    function  Get_ChoosenObjects: OleVariant; safecall;
    property ChoosenObjects: OleVariant read Get_ChoosenObjects;
  end;

// *********************************************************************//
// DispIntf:  IChooseManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E2D9EAA6-F88C-4ADB-AC32-854E32E9FEE1}
// *********************************************************************//
  IChooseManagerDisp = dispinterface
    ['{E2D9EAA6-F88C-4ADB-AC32-854E32E9FEE1}']
    function  Choose(Objects: OleVariant): WordBool; dispid 1;
    function  Unchoose(Objects: OleVariant): WordBool; dispid 2;
    function  UnchooseAll: WordBool; dispid 3;
    function  IsChoosen(const Object_: IKompasAPIObject): WordBool; dispid 4;
    property ChoosenObjects: OleVariant readonly dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAttribute
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {94F965B0-5ABB-4994-98C7-B08FA8515452}
// *********************************************************************//
  IAttribute = interface(IKompasAPIObject)
    ['{94F965B0-5ABB-4994-98C7-B08FA8515452}']
    procedure Set_Objects(Result: OleVariant); safecall;
    function  Get_Objects: OleVariant; safecall;
    function  Get_Value(RowNumb: Integer; ColumnNumb: Integer): OleVariant; safecall;
    function  SetValue(const Password: WideString; RowNumb: Integer; ColumnNumb: Integer; 
                       Value: OleVariant): WordBool; safecall;
    function  Get_Values: OleVariant; safecall;
    function  SetValues(const Password: WideString; Values: OleVariant): WordBool; safecall;
    function  Get_FlagVisible: OleVariant; safecall;
    function  SetFlagVisible(const Password: WideString; Values: OleVariant): WordBool; safecall;
    function  Get_ColumnKey: OleVariant; safecall;
    function  SetColumnKey(const Password: WideString; Keys: OleVariant): WordBool; safecall;
    function  SetPassword(const OldPassword: WideString; const NewPassword: WideString): WordBool; safecall;
    function  AddRow(const Password: WideString; RowNumb: Integer): WordBool; safecall;
    function  DeleteRow(const Password: WideString; RowNumb: Integer): WordBool; safecall;
    function  GetKeysInfo(out Key1: Integer; out Key2: Integer; out Key3: Integer; 
                          out Key4: Integer; out Numb: Double): WordBool; safecall;
    function  SetKeysInfo(const Password: WideString; Key1: Integer; Key2: Integer; Key3: Integer; 
                          Key4: Integer): WordBool; safecall;
    function  Get_AttributeType: IAttributeType; safecall;
    function  Get_RowsCount: Integer; safecall;
    function  Get_ColumnsCount: Integer; safecall;
    function  Delete(const Password: WideString; Objects: OleVariant): WordBool; safecall;
    function  ViewEdit(Parent: OLE_HANDLE; const Password: WideString; ReadOnly: WordBool): WordBool; safecall;
    function  Get_RecordFlagVisible(ColumnNumb: Integer): OleVariant; safecall;
    function  SetRecordFlagVisible(const Password: WideString; ColumnNumb: Integer; 
                                   Values: OleVariant): WordBool; safecall;
    property Objects: OleVariant read Get_Objects write Set_Objects;
    property Value[RowNumb: Integer; ColumnNumb: Integer]: OleVariant read Get_Value;
    property Values: OleVariant read Get_Values;
    property FlagVisible: OleVariant read Get_FlagVisible;
    property ColumnKey: OleVariant read Get_ColumnKey;
    property AttributeType: IAttributeType read Get_AttributeType;
    property RowsCount: Integer read Get_RowsCount;
    property ColumnsCount: Integer read Get_ColumnsCount;
    property RecordFlagVisible[ColumnNumb: Integer]: OleVariant read Get_RecordFlagVisible;
  end;

// *********************************************************************//
// DispIntf:  IAttributeDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {94F965B0-5ABB-4994-98C7-B08FA8515452}
// *********************************************************************//
  IAttributeDisp = dispinterface
    ['{94F965B0-5ABB-4994-98C7-B08FA8515452}']
    property Objects: OleVariant dispid 1;
    property Value[RowNumb: Integer; ColumnNumb: Integer]: OleVariant readonly dispid 2;
    function  SetValue(const Password: WideString; RowNumb: Integer; ColumnNumb: Integer; 
                       Value: OleVariant): WordBool; dispid 3;
    property Values: OleVariant readonly dispid 4;
    function  SetValues(const Password: WideString; Values: OleVariant): WordBool; dispid 5;
    property FlagVisible: OleVariant readonly dispid 6;
    function  SetFlagVisible(const Password: WideString; Values: OleVariant): WordBool; dispid 7;
    property ColumnKey: OleVariant readonly dispid 8;
    function  SetColumnKey(const Password: WideString; Keys: OleVariant): WordBool; dispid 9;
    function  SetPassword(const OldPassword: WideString; const NewPassword: WideString): WordBool; dispid 10;
    function  AddRow(const Password: WideString; RowNumb: Integer): WordBool; dispid 11;
    function  DeleteRow(const Password: WideString; RowNumb: Integer): WordBool; dispid 12;
    function  GetKeysInfo(out Key1: Integer; out Key2: Integer; out Key3: Integer; 
                          out Key4: Integer; out Numb: Double): WordBool; dispid 13;
    function  SetKeysInfo(const Password: WideString; Key1: Integer; Key2: Integer; Key3: Integer; 
                          Key4: Integer): WordBool; dispid 14;
    property AttributeType: IAttributeType readonly dispid 15;
    property RowsCount: Integer readonly dispid 16;
    property ColumnsCount: Integer readonly dispid 17;
    function  Delete(const Password: WideString; Objects: OleVariant): WordBool; dispid 18;
    function  ViewEdit(Parent: OLE_HANDLE; const Password: WideString; ReadOnly: WordBool): WordBool; dispid 19;
    property RecordFlagVisible[ColumnNumb: Integer]: OleVariant readonly dispid 20;
    function  SetRecordFlagVisible(const Password: WideString; ColumnNumb: Integer; 
                                   Values: OleVariant): WordBool; dispid 21;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAttributeType
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {414CF83E-4FA3-42AB-BC26-6C6BBF91BB0F}
// *********************************************************************//
  IAttributeType = interface(IKompasAPIObject)
    ['{414CF83E-4FA3-42AB-BC26-6C6BBF91BB0F}']
    procedure Set_TypeName(const PVal: WideString); safecall;
    function  Get_TypeName: WideString; safecall;
    procedure Set_AttrType(PVal: ksAttributeTypeEnum); safecall;
    function  Get_AttrType: ksAttributeTypeEnum; safecall;
    function  GetKeysInfo(out Key1: Integer; out Key2: Integer; out Key3: Integer; out Key4: Integer): WordBool; safecall;
    function  SetKeysInfo(Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer): WordBool; safecall;
    function  Get_UniqueNumb: Double; safecall;
    function  SetPassword(const OldPassword: WideString; const NewPassword: WideString): WordBool; safecall;
    function  Get_ColumnInfo(Index: OleVariant): IColumnInfo; safecall;
    function  AddColumn(Index: Integer; Type_: ksValueTypeEnum; const Name: WideString): IColumnInfo; safecall;
    function  Update(const Password: WideString): WordBool; safecall;
    function  Delete(const Password: WideString): WordBool; safecall;
    function  ViewEdit(Parent: OLE_HANDLE; const Password: WideString; ReadOnly: WordBool): WordBool; safecall;
    procedure Set_RowsCount(Count: Integer); safecall;
    function  Get_RowsCount: Integer; safecall;
    function  Get_FileName: WideString; safecall;
    property TypeName: WideString read Get_TypeName write Set_TypeName;
    property AttrType: ksAttributeTypeEnum read Get_AttrType write Set_AttrType;
    property UniqueNumb: Double read Get_UniqueNumb;
    property ColumnInfo[Index: OleVariant]: IColumnInfo read Get_ColumnInfo;
    property RowsCount: Integer read Get_RowsCount write Set_RowsCount;
    property FileName: WideString read Get_FileName;
  end;

// *********************************************************************//
// DispIntf:  IAttributeTypeDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {414CF83E-4FA3-42AB-BC26-6C6BBF91BB0F}
// *********************************************************************//
  IAttributeTypeDisp = dispinterface
    ['{414CF83E-4FA3-42AB-BC26-6C6BBF91BB0F}']
    property TypeName: WideString dispid 1;
    property AttrType: ksAttributeTypeEnum dispid 2;
    function  GetKeysInfo(out Key1: Integer; out Key2: Integer; out Key3: Integer; out Key4: Integer): WordBool; dispid 3;
    function  SetKeysInfo(Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer): WordBool; dispid 4;
    property UniqueNumb: Double readonly dispid 5;
    function  SetPassword(const OldPassword: WideString; const NewPassword: WideString): WordBool; dispid 6;
    property ColumnInfo[Index: OleVariant]: IColumnInfo readonly dispid 7;
    function  AddColumn(Index: Integer; Type_: ksValueTypeEnum; const Name: WideString): IColumnInfo; dispid 8;
    function  Update(const Password: WideString): WordBool; dispid 9;
    function  Delete(const Password: WideString): WordBool; dispid 10;
    function  ViewEdit(Parent: OLE_HANDLE; const Password: WideString; ReadOnly: WordBool): WordBool; dispid 11;
    property RowsCount: Integer dispid 12;
    property FileName: WideString readonly dispid 13;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IColumnInfo
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3FDE0F44-4459-49F3-A012-E64F9BFA454D}
// *********************************************************************//
  IColumnInfo = interface(IKompasAPIObject)
    ['{3FDE0F44-4459-49F3-A012-E64F9BFA454D}']
    procedure Set_Caption(const PVal: WideString); safecall;
    function  Get_Caption: WideString; safecall;
    procedure Set_ColType(PVal: ksValueTypeEnum); safecall;
    function  Get_ColType: ksValueTypeEnum; safecall;
    procedure Set_Key(PVal: Integer); safecall;
    function  Get_Key: Integer; safecall;
    procedure Set_DefValue(PVal: OleVariant); safecall;
    function  Get_DefValue: OleVariant; safecall;
    procedure Set_ListValue(PVal: WordBool); safecall;
    function  Get_ListValue: WordBool; safecall;
    procedure Set_SortListValue(PVal: WordBool); safecall;
    function  Get_SortListValue: WordBool; safecall;
    procedure Set_Range(PVal: OleVariant); safecall;
    function  Get_Range: OleVariant; safecall;
    function  Get_RecordColumnInfo(Index: OleVariant): IColumnInfo; safecall;
    function  AddRecordColumn(Index: Integer; Type_: ksValueTypeEnum; const Name: WideString): IColumnInfo; safecall;
    function  Delete: WordBool; safecall;
    property Caption: WideString read Get_Caption write Set_Caption;
    property ColType: ksValueTypeEnum read Get_ColType write Set_ColType;
    property Key: Integer read Get_Key write Set_Key;
    property DefValue: OleVariant read Get_DefValue write Set_DefValue;
    property ListValue: WordBool read Get_ListValue write Set_ListValue;
    property SortListValue: WordBool read Get_SortListValue write Set_SortListValue;
    property Range: OleVariant read Get_Range write Set_Range;
    property RecordColumnInfo[Index: OleVariant]: IColumnInfo read Get_RecordColumnInfo;
  end;

// *********************************************************************//
// DispIntf:  IColumnInfoDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3FDE0F44-4459-49F3-A012-E64F9BFA454D}
// *********************************************************************//
  IColumnInfoDisp = dispinterface
    ['{3FDE0F44-4459-49F3-A012-E64F9BFA454D}']
    property Caption: WideString dispid 1;
    property ColType: ksValueTypeEnum dispid 2;
    property Key: Integer dispid 3;
    property DefValue: OleVariant dispid 4;
    property ListValue: WordBool dispid 5;
    property SortListValue: WordBool dispid 6;
    property Range: OleVariant dispid 7;
    property RecordColumnInfo[Index: OleVariant]: IColumnInfo readonly dispid 8;
    function  AddRecordColumn(Index: Integer; Type_: ksValueTypeEnum; const Name: WideString): IColumnInfo; dispid 9;
    function  Delete: WordBool; dispid 10;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingObject1
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {649F0EB2-EBC0-449B-8B61-DC3CF1953BF9}
// *********************************************************************//
  IDrawingObject1 = interface(IDispatch)
    ['{649F0EB2-EBC0-449B-8B61-DC3CF1953BF9}']
    function  Get_Constraints: OleVariant; safecall;
    function  NewConstraint: IParametriticConstraint; safecall;
    function  Associate: WordBool; safecall;
    function  DeleteConstraints: WordBool; safecall;
    function  Get_TransparentBackground: WordBool; safecall;
    procedure Set_TransparentBackground(Value: WordBool); safecall;
    function  Get_AutoTransparentBackground: WordBool; safecall;
    procedure Set_AutoTransparentBackground(Value: WordBool); safecall;
    function  Get_IsGeometryObject: WordBool; safecall;
    function  Get_IsAnnotativeObject: WordBool; safecall;
    function  Get_IsCurve: WordBool; safecall;
    property Constraints: OleVariant read Get_Constraints;
    property TransparentBackground: WordBool read Get_TransparentBackground write Set_TransparentBackground;
    property AutoTransparentBackground: WordBool read Get_AutoTransparentBackground write Set_AutoTransparentBackground;
    property IsGeometryObject: WordBool read Get_IsGeometryObject;
    property IsAnnotativeObject: WordBool read Get_IsAnnotativeObject;
    property IsCurve: WordBool read Get_IsCurve;
  end;

// *********************************************************************//
// DispIntf:  IDrawingObject1Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {649F0EB2-EBC0-449B-8B61-DC3CF1953BF9}
// *********************************************************************//
  IDrawingObject1Disp = dispinterface
    ['{649F0EB2-EBC0-449B-8B61-DC3CF1953BF9}']
    property Constraints: OleVariant readonly dispid 6001;
    function  NewConstraint: IParametriticConstraint; dispid 6002;
    function  Associate: WordBool; dispid 6003;
    function  DeleteConstraints: WordBool; dispid 6004;
    property TransparentBackground: WordBool dispid 6005;
    property AutoTransparentBackground: WordBool dispid 6006;
    property IsGeometryObject: WordBool readonly dispid 6007;
    property IsAnnotativeObject: WordBool readonly dispid 6008;
    property IsCurve: WordBool readonly dispid 6009;
  end;

// *********************************************************************//
// Interface: IParametriticConstraint
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {131069F4-A4E2-4DB4-A559-85EACCC74CE4}
// *********************************************************************//
  IParametriticConstraint = interface(IKompasAPIObject)
    ['{131069F4-A4E2-4DB4-A559-85EACCC74CE4}']
    procedure Set_ConstraintType(PVal: ksConstraintTypeEnum); safecall;
    function  Get_ConstraintType: ksConstraintTypeEnum; safecall;
    procedure Set_Index(PVal: Integer); safecall;
    function  Get_Index: Integer; safecall;
    procedure Set_Partner(PVal: OleVariant); safecall;
    function  Get_Partner: OleVariant; safecall;
    procedure Set_PartnerIndex(PVal: Integer); safecall;
    function  Get_PartnerIndex: Integer; safecall;
    procedure Set_Value(PVal: Double); safecall;
    function  Get_Value: Double; safecall;
    procedure Set_Expression(const PVal: WideString); safecall;
    function  Get_Expression: WideString; safecall;
    procedure Set_Comment(const PVal: WideString); safecall;
    function  Get_Comment: WideString; safecall;
    procedure Set_Variable(const PVal: WideString); safecall;
    function  Get_Variable: WideString; safecall;
    procedure Set_Degrees(PVal: Integer); safecall;
    function  Get_Degrees: Integer; safecall;
    procedure Set_Minutes(PVal: Integer); safecall;
    function  Get_Minutes: Integer; safecall;
    procedure Set_Seconds(PVal: Double); safecall;
    function  Get_Seconds: Double; safecall;
    function  Delete: WordBool; safecall;
    function  Create: WordBool; safecall;
    function  Get_Valid: WordBool; safecall;
    function  Get_Axis: IDrawingObject; safecall;
    procedure Set_Axis(const PVal: IDrawingObject); safecall;
    property ConstraintType: ksConstraintTypeEnum read Get_ConstraintType write Set_ConstraintType;
    property Index: Integer read Get_Index write Set_Index;
    property Partner: OleVariant read Get_Partner write Set_Partner;
    property PartnerIndex: Integer read Get_PartnerIndex write Set_PartnerIndex;
    property Value: Double read Get_Value write Set_Value;
    property Expression: WideString read Get_Expression write Set_Expression;
    property Comment: WideString read Get_Comment write Set_Comment;
    property Variable: WideString read Get_Variable write Set_Variable;
    property Degrees: Integer read Get_Degrees write Set_Degrees;
    property Minutes: Integer read Get_Minutes write Set_Minutes;
    property Seconds: Double read Get_Seconds write Set_Seconds;
    property Valid: WordBool read Get_Valid;
    property Axis: IDrawingObject read Get_Axis write Set_Axis;
  end;

// *********************************************************************//
// DispIntf:  IParametriticConstraintDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {131069F4-A4E2-4DB4-A559-85EACCC74CE4}
// *********************************************************************//
  IParametriticConstraintDisp = dispinterface
    ['{131069F4-A4E2-4DB4-A559-85EACCC74CE4}']
    property ConstraintType: ksConstraintTypeEnum dispid 1;
    property Index: Integer dispid 2;
    property Partner: OleVariant dispid 3;
    property PartnerIndex: Integer dispid 4;
    property Value: Double dispid 5;
    property Expression: WideString dispid 6;
    property Comment: WideString dispid 7;
    property Variable: WideString dispid 8;
    property Degrees: Integer dispid 9;
    property Minutes: Integer dispid 10;
    property Seconds: Double dispid 11;
    function  Delete: WordBool; dispid 12;
    function  Create: WordBool; dispid 13;
    property Valid: WordBool readonly dispid 14;
    property Axis: IDrawingObject dispid 15;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IKompasDocument1
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {58890FE8-E671-4561-994A-600DD29032E4}
// *********************************************************************//
  IKompasDocument1 = interface(IDispatch)
    ['{58890FE8-E671-4561-994A-600DD29032E4}']
    function  Delete(Objects: OleVariant): WordBool; safecall;
    function  Get_Attributes(Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; 
                             Numb: Double; Objects: OleVariant): OleVariant; safecall;
    function  Get_ObjectsByAttr(Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; 
                                Numb: Double; ObjectType: OleVariant): OleVariant; safecall;
    function  CreateAttr(AttrID: Double; const Libname: WideString; Objects: OleVariant): IAttribute; safecall;
    function  ViewEditAttr(HWnd: OLE_HANDLE; Objects: OleVariant): WordBool; safecall;
    function  GetInterface(Type_: KompasAPIObjectTypeEnum): IKompasAPIObject; safecall;
    function  Get_ExternalFilesNames(allFiles: WordBool): OleVariant; safecall;
    property Attributes[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; Numb: Double; 
                        Objects: OleVariant]: OleVariant read Get_Attributes;
    property ObjectsByAttr[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; 
                           Numb: Double; ObjectType: OleVariant]: OleVariant read Get_ObjectsByAttr;
    property ExternalFilesNames[allFiles: WordBool]: OleVariant read Get_ExternalFilesNames;
  end;

// *********************************************************************//
// DispIntf:  IKompasDocument1Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {58890FE8-E671-4561-994A-600DD29032E4}
// *********************************************************************//
  IKompasDocument1Disp = dispinterface
    ['{58890FE8-E671-4561-994A-600DD29032E4}']
    function  Delete(Objects: OleVariant): WordBool; dispid 10001;
    property Attributes[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; Numb: Double; 
                        Objects: OleVariant]: OleVariant readonly dispid 10002;
    property ObjectsByAttr[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; 
                           Numb: Double; ObjectType: OleVariant]: OleVariant readonly dispid 10003;
    function  CreateAttr(AttrID: Double; const Libname: WideString; Objects: OleVariant): IAttribute; dispid 10004;
    function  ViewEditAttr(HWnd: OLE_HANDLE; Objects: OleVariant): WordBool; dispid 10005;
    function  GetInterface(Type_: KompasAPIObjectTypeEnum): IKompasAPIObject; dispid 10006;
    property ExternalFilesNames[allFiles: WordBool]: OleVariant readonly dispid 10007;
  end;

// *********************************************************************//
// Interface: IKompasDocument2D1
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FB57F1C4-44FE-4C73-9B15-87241E8735B5}
// *********************************************************************//
  IKompasDocument2D1 = interface(IDispatch)
    ['{FB57F1C4-44FE-4C73-9B15-87241E8735B5}']
    function  Get_EditMacroObject: IMacroObject; safecall;
    function  Get_DrawingGroups: IDrawingGroups; safecall;
    function  Get_NamedGroups: IDrawingGroups; safecall;
    function  Get_CurrentGroup: IDrawingGroup; safecall;
    function  Get_SelectionManager: ISelectionManager; safecall;
    function  Get_ChooseManager: IChooseManager; safecall;
    function  CopyObjects(Objects: OleVariant; const params: ICopyObjectParam): OleVariant; safecall;
    function  Get_Variables(ExternalOnly: WordBool): OleVariant; safecall;
    function  Get_Variable(External: WordBool; Index: OleVariant): IVariable7; safecall;
    function  Get_VariablesCount(External: WordBool): Integer; safecall;
    function  UpdateVariables: WordBool; safecall;
    function  Get_VariableTable: IVariableTable; safecall;
    function  IsVariableNameValid(const Name: WideString): WordBool; safecall;
    function  AddVariable(const Name: WideString; Value: Double; const Note: WideString): IVariable7; safecall;
    function  RebuildDocument: WordBool; safecall;
    property EditMacroObject: IMacroObject read Get_EditMacroObject;
    property DrawingGroups: IDrawingGroups read Get_DrawingGroups;
    property NamedGroups: IDrawingGroups read Get_NamedGroups;
    property CurrentGroup: IDrawingGroup read Get_CurrentGroup;
    property SelectionManager: ISelectionManager read Get_SelectionManager;
    property ChooseManager: IChooseManager read Get_ChooseManager;
    property Variables[ExternalOnly: WordBool]: OleVariant read Get_Variables;
    property Variable[External: WordBool; Index: OleVariant]: IVariable7 read Get_Variable;
    property VariablesCount[External: WordBool]: Integer read Get_VariablesCount;
    property VariableTable: IVariableTable read Get_VariableTable;
  end;

// *********************************************************************//
// DispIntf:  IKompasDocument2D1Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FB57F1C4-44FE-4C73-9B15-87241E8735B5}
// *********************************************************************//
  IKompasDocument2D1Disp = dispinterface
    ['{FB57F1C4-44FE-4C73-9B15-87241E8735B5}']
    property EditMacroObject: IMacroObject readonly dispid 11001;
    property DrawingGroups: IDrawingGroups readonly dispid 11002;
    property NamedGroups: IDrawingGroups readonly dispid 11003;
    property CurrentGroup: IDrawingGroup readonly dispid 11004;
    property SelectionManager: ISelectionManager readonly dispid 11005;
    property ChooseManager: IChooseManager readonly dispid 11006;
    function  CopyObjects(Objects: OleVariant; const params: ICopyObjectParam): OleVariant; dispid 11007;
    property Variables[ExternalOnly: WordBool]: OleVariant readonly dispid 11008;
    property Variable[External: WordBool; Index: OleVariant]: IVariable7 readonly dispid 11009;
    property VariablesCount[External: WordBool]: Integer readonly dispid 11010;
    function  UpdateVariables: WordBool; dispid 11011;
    property VariableTable: IVariableTable readonly dispid 11012;
    function  IsVariableNameValid(const Name: WideString): WordBool; dispid 11013;
    function  AddVariable(const Name: WideString; Value: Double; const Note: WideString): IVariable7; dispid 11014;
    function  RebuildDocument: WordBool; dispid 11015;
  end;

// *********************************************************************//
// Interface: IMacroObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B21C70C9-53EC-4BB7-A9DB-BCE852CA6716}
// *********************************************************************//
  IMacroObject = interface(IDrawingObject)
    ['{B21C70C9-53EC-4BB7-A9DB-BCE852CA6716}']
    procedure Set_LibraryFileName(const PVal: WideString); safecall;
    function  Get_LibraryFileName: WideString; safecall;
    procedure Set_LibraryName(const PVal: WideString); safecall;
    function  Get_LibraryName: WideString; safecall;
    procedure Set_Command(PVal: Integer); safecall;
    function  Get_Command: Integer; safecall;
    procedure Set_DoubleClickEditable(PVal: WordBool); safecall;
    function  Get_DoubleClickEditable: WordBool; safecall;
    procedure Set_HotPointsEditable(PVal: WordBool); safecall;
    function  Get_HotPointsEditable: WordBool; safecall;
    procedure Set_ExternalEditable(PVal: WordBool); safecall;
    function  Get_ExternalEditable: WordBool; safecall;
    procedure Set_UserParams(PVal: OleVariant); safecall;
    function  Get_UserParams: OleVariant; safecall;
    function  AddObjects(Objects: OleVariant): WordBool; safecall;
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; safecall;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; var MirrorSymmetry: WordBool; 
                           Relative: WordBool): WordBool; safecall;
    property LibraryFileName: WideString read Get_LibraryFileName write Set_LibraryFileName;
    property LibraryName: WideString read Get_LibraryName write Set_LibraryName;
    property Command: Integer read Get_Command write Set_Command;
    property DoubleClickEditable: WordBool read Get_DoubleClickEditable write Set_DoubleClickEditable;
    property HotPointsEditable: WordBool read Get_HotPointsEditable write Set_HotPointsEditable;
    property ExternalEditable: WordBool read Get_ExternalEditable write Set_ExternalEditable;
    property UserParams: OleVariant read Get_UserParams write Set_UserParams;
  end;

// *********************************************************************//
// DispIntf:  IMacroObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B21C70C9-53EC-4BB7-A9DB-BCE852CA6716}
// *********************************************************************//
  IMacroObjectDisp = dispinterface
    ['{B21C70C9-53EC-4BB7-A9DB-BCE852CA6716}']
    property LibraryFileName: WideString dispid 1;
    property LibraryName: WideString dispid 2;
    property Command: Integer dispid 3;
    property DoubleClickEditable: WordBool dispid 4;
    property HotPointsEditable: WordBool dispid 5;
    property ExternalEditable: WordBool dispid 6;
    property UserParams: OleVariant dispid 7;
    function  AddObjects(Objects: OleVariant): WordBool; dispid 8;
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; dispid 9;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; var MirrorSymmetry: WordBool; 
                           Relative: WordBool): WordBool; dispid 10;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingGroups
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0ED06421-907C-4EF0-89F7-AEFC81BEF1DF}
// *********************************************************************//
  IDrawingGroups = interface(IKompasCollection)
    ['{0ED06421-907C-4EF0-89F7-AEFC81BEF1DF}']
    function  Get_Item(Index: OleVariant): IDrawingGroup; safecall;
    function  Add(Temp: WordBool; const Name: WideString): IDrawingGroup; safecall;
    property Item[Index: OleVariant]: IDrawingGroup read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IDrawingGroupsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0ED06421-907C-4EF0-89F7-AEFC81BEF1DF}
// *********************************************************************//
  IDrawingGroupsDisp = dispinterface
    ['{0ED06421-907C-4EF0-89F7-AEFC81BEF1DF}']
    property Item[Index: OleVariant]: IDrawingGroup readonly dispid 0; default;
    function  Add(Temp: WordBool; const Name: WideString): IDrawingGroup; dispid 1;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingGroup
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2C96ACB2-4877-45D9-B62D-78BBAD704458}
// *********************************************************************//
  IDrawingGroup = interface(IKompasAPIObject)
    ['{2C96ACB2-4877-45D9-B62D-78BBAD704458}']
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    function  Get_Objects(Type_: OleVariant): OleVariant; safecall;
    function  AddObjects(Objects: OleVariant): WordBool; safecall;
    function  DetachObjects(Objects: OleVariant; DeleteTmp: WordBool): WordBool; safecall;
    function  Clear(DeleteTmp: WordBool): WordBool; safecall;
    function  Store: WordBool; safecall;
    function  Get_ObjectsCount: Integer; safecall;
    function  ExistObject(const Object_: IDrawingObject): WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  AddRegion(RegionType: ksRegionTypeEnum; XMin: Double; YMin: Double; XMax: Double; 
                        YMax: Double): WordBool; safecall;
    function  ReadFragment(const FileName: WideString; CurentLayer: WordBool; XBase: Double; 
                           YBase: Double; Scale: Double; Angle: Double; ScaleProjLinesSize: WordBool): WordBool; safecall;
    function  WriteFragment(const FileName: WideString; const Comment: WideString; XBase: Double; 
                            YBase: Double): WordBool; safecall;
    function  WriteToClip(AttrCopy: WordBool; SpcObjCopy: WordBool): WordBool; safecall;
    function  ReadFromClip(AttrCopy: WordBool; SpcObjCopy: WordBool): WordBool; safecall;
    function  Draw(HWnd: OLE_HANDLE): WordBool; safecall;
    function  Open: WordBool; safecall;
    function  Close: WordBool; safecall;
    function  Get_Current: WordBool; safecall;
    property Name: WideString read Get_Name write Set_Name;
    property Objects[Type_: OleVariant]: OleVariant read Get_Objects;
    property ObjectsCount: Integer read Get_ObjectsCount;
    property Current: WordBool read Get_Current;
  end;

// *********************************************************************//
// DispIntf:  IDrawingGroupDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2C96ACB2-4877-45D9-B62D-78BBAD704458}
// *********************************************************************//
  IDrawingGroupDisp = dispinterface
    ['{2C96ACB2-4877-45D9-B62D-78BBAD704458}']
    property Name: WideString dispid 1;
    property Objects[Type_: OleVariant]: OleVariant readonly dispid 2;
    function  AddObjects(Objects: OleVariant): WordBool; dispid 3;
    function  DetachObjects(Objects: OleVariant; DeleteTmp: WordBool): WordBool; dispid 4;
    function  Clear(DeleteTmp: WordBool): WordBool; dispid 5;
    function  Store: WordBool; dispid 6;
    property ObjectsCount: Integer readonly dispid 7;
    function  ExistObject(const Object_: IDrawingObject): WordBool; dispid 8;
    function  Delete: WordBool; dispid 9;
    function  AddRegion(RegionType: ksRegionTypeEnum; XMin: Double; YMin: Double; XMax: Double; 
                        YMax: Double): WordBool; dispid 10;
    function  ReadFragment(const FileName: WideString; CurentLayer: WordBool; XBase: Double; 
                           YBase: Double; Scale: Double; Angle: Double; ScaleProjLinesSize: WordBool): WordBool; dispid 11;
    function  WriteFragment(const FileName: WideString; const Comment: WideString; XBase: Double; 
                            YBase: Double): WordBool; dispid 12;
    function  WriteToClip(AttrCopy: WordBool; SpcObjCopy: WordBool): WordBool; dispid 13;
    function  ReadFromClip(AttrCopy: WordBool; SpcObjCopy: WordBool): WordBool; dispid 14;
    function  Draw(HWnd: OLE_HANDLE): WordBool; dispid 15;
    function  Open: WordBool; dispid 16;
    function  Close: WordBool; dispid 17;
    property Current: WordBool readonly dispid 18;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICopyObjectParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {58E1BACA-32D5-4EAB-87E9-D14816DAC29F}
// *********************************************************************//
  ICopyObjectParam = interface(IKompasAPIObject)
    ['{58E1BACA-32D5-4EAB-87E9-D14816DAC29F}']
    procedure Set_XOld(PVal: Double); safecall;
    function  Get_XOld: Double; safecall;
    procedure Set_YOld(PVal: Double); safecall;
    function  Get_YOld: Double; safecall;
    procedure Set_XNew(PVal: Double); safecall;
    function  Get_XNew: Double; safecall;
    procedure Set_YNew(PVal: Double); safecall;
    function  Get_YNew: Double; safecall;
    procedure Set_Scale(PVal: Double); safecall;
    function  Get_Scale: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_AttributeCopy(PVal: WordBool); safecall;
    function  Get_AttributeCopy: WordBool; safecall;
    procedure Set_DimensionLineScale(PVal: WordBool); safecall;
    function  Get_DimensionLineScale: WordBool; safecall;
    procedure Set_SpecificationObjectCopy(PVal: WordBool); safecall;
    function  Get_SpecificationObjectCopy: WordBool; safecall;
    property XOld: Double read Get_XOld write Set_XOld;
    property YOld: Double read Get_YOld write Set_YOld;
    property XNew: Double read Get_XNew write Set_XNew;
    property YNew: Double read Get_YNew write Set_YNew;
    property Scale: Double read Get_Scale write Set_Scale;
    property Angle: Double read Get_Angle write Set_Angle;
    property AttributeCopy: WordBool read Get_AttributeCopy write Set_AttributeCopy;
    property DimensionLineScale: WordBool read Get_DimensionLineScale write Set_DimensionLineScale;
    property SpecificationObjectCopy: WordBool read Get_SpecificationObjectCopy write Set_SpecificationObjectCopy;
  end;

// *********************************************************************//
// DispIntf:  ICopyObjectParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {58E1BACA-32D5-4EAB-87E9-D14816DAC29F}
// *********************************************************************//
  ICopyObjectParamDisp = dispinterface
    ['{58E1BACA-32D5-4EAB-87E9-D14816DAC29F}']
    property XOld: Double dispid 1;
    property YOld: Double dispid 2;
    property XNew: Double dispid 3;
    property YNew: Double dispid 4;
    property Scale: Double dispid 5;
    property Angle: Double dispid 6;
    property AttributeCopy: WordBool dispid 7;
    property DimensionLineScale: WordBool dispid 8;
    property SpecificationObjectCopy: WordBool dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C2214318-5C89-40F8-A25C-C87D08B490F4}
// *********************************************************************//
  IDrawingDocument = interface(IKompasDocument2D)
    ['{C2214318-5C89-40F8-A25C-C87D08B490F4}']
    function  Get_ChangeListDescriptions: ISpecificationDescriptions; safecall;
    function  Get_SpecRough: ISpecRough; safecall;
    function  Get_TechnicalDemand: ITechnicalDemand; safecall;
    property ChangeListDescriptions: ISpecificationDescriptions read Get_ChangeListDescriptions;
    property SpecRough: ISpecRough read Get_SpecRough;
    property TechnicalDemand: ITechnicalDemand read Get_TechnicalDemand;
  end;

// *********************************************************************//
// DispIntf:  IDrawingDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C2214318-5C89-40F8-A25C-C87D08B490F4}
// *********************************************************************//
  IDrawingDocumentDisp = dispinterface
    ['{C2214318-5C89-40F8-A25C-C87D08B490F4}']
    property ChangeListDescriptions: ISpecificationDescriptions readonly dispid 5001;
    property SpecRough: ISpecRough readonly dispid 5002;
    property TechnicalDemand: ITechnicalDemand readonly dispid 5003;
    property ViewsAndLayersManager: IViewsAndLayersManager readonly dispid 1;
    function  GetDrawingObjectNotifyResult: IDispatch; dispid 2;
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecRough
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D723AAC1-0315-4AED-99BF-88A7E55B6E6D}
// *********************************************************************//
  ISpecRough = interface(IKompasAPIObject)
    ['{D723AAC1-0315-4AED-99BF-88A7E55B6E6D}']
    function  Get_X: Double; safecall;
    procedure Set_X(Result: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Y(Result: Double); safecall;
    procedure Set_AutoPlacement(PVal: WordBool); safecall;
    function  Get_AutoPlacement: WordBool; safecall;
    function  Get_SignType: ksRoughSignEnum; safecall;
    procedure Set_SignType(Result: ksRoughSignEnum); safecall;
    function  Get_Text: WideString; safecall;
    procedure Set_Text(const PVal: WideString); safecall;
    function  Get_Distance: Double; safecall;
    procedure Set_Distance(PVal: Double); safecall;
    function  Get_AddSign: WordBool; safecall;
    procedure Set_AddSign(PRes: WordBool); safecall;
    function  Update: WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Get_IsCreated: WordBool; safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property AutoPlacement: WordBool read Get_AutoPlacement write Set_AutoPlacement;
    property SignType: ksRoughSignEnum read Get_SignType write Set_SignType;
    property Text: WideString read Get_Text write Set_Text;
    property Distance: Double read Get_Distance write Set_Distance;
    property AddSign: WordBool read Get_AddSign write Set_AddSign;
    property IsCreated: WordBool read Get_IsCreated;
  end;

// *********************************************************************//
// DispIntf:  ISpecRoughDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D723AAC1-0315-4AED-99BF-88A7E55B6E6D}
// *********************************************************************//
  ISpecRoughDisp = dispinterface
    ['{D723AAC1-0315-4AED-99BF-88A7E55B6E6D}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property AutoPlacement: WordBool dispid 3;
    property SignType: ksRoughSignEnum dispid 4;
    property Text: WideString dispid 5;
    property Distance: Double dispid 6;
    property AddSign: WordBool dispid 7;
    function  Update: WordBool; dispid 8;
    function  Delete: WordBool; dispid 9;
    property IsCreated: WordBool readonly dispid 10;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITechnicalDemand
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {18C80AE5-BF92-482A-9C56-3D1638F5E5F5}
// *********************************************************************//
  ITechnicalDemand = interface(IKompasAPIObject)
    ['{18C80AE5-BF92-482A-9C56-3D1638F5E5F5}']
    function  Get_Text: IText; safecall;
    function  Get_BlocksGabarits: OleVariant; safecall;
    procedure Set_BlocksGabarits(PVal: OleVariant); safecall;
    procedure Set_AutoPlacement(PVal: WordBool); safecall;
    function  Get_AutoPlacement: WordBool; safecall;
    function  Update: WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Get_IsCreated: WordBool; safecall;
    function  Get_BlocksStartLineNumbers: OleVariant; safecall;
    property Text: IText read Get_Text;
    property BlocksGabarits: OleVariant read Get_BlocksGabarits write Set_BlocksGabarits;
    property AutoPlacement: WordBool read Get_AutoPlacement write Set_AutoPlacement;
    property IsCreated: WordBool read Get_IsCreated;
    property BlocksStartLineNumbers: OleVariant read Get_BlocksStartLineNumbers;
  end;

// *********************************************************************//
// DispIntf:  ITechnicalDemandDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {18C80AE5-BF92-482A-9C56-3D1638F5E5F5}
// *********************************************************************//
  ITechnicalDemandDisp = dispinterface
    ['{18C80AE5-BF92-482A-9C56-3D1638F5E5F5}']
    property Text: IText readonly dispid 1;
    property BlocksGabarits: OleVariant dispid 2;
    property AutoPlacement: WordBool dispid 3;
    function  Update: WordBool; dispid 4;
    function  Delete: WordBool; dispid 5;
    property IsCreated: WordBool readonly dispid 6;
    property BlocksStartLineNumbers: OleVariant readonly dispid 7;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IFragmentDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E19CE626-DF9C-48C4-A83D-3E3BC7F0DACA}
// *********************************************************************//
  IFragmentDocument = interface(IKompasDocument2D)
    ['{E19CE626-DF9C-48C4-A83D-3E3BC7F0DACA}']
    function  Get_IsSketch: WordBool; safecall;
    property IsSketch: WordBool read Get_IsSketch;
  end;

// *********************************************************************//
// DispIntf:  IFragmentDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E19CE626-DF9C-48C4-A83D-3E3BC7F0DACA}
// *********************************************************************//
  IFragmentDocumentDisp = dispinterface
    ['{E19CE626-DF9C-48C4-A83D-3E3BC7F0DACA}']
    property IsSketch: WordBool readonly dispid 5001;
    property ViewsAndLayersManager: IViewsAndLayersManager readonly dispid 1;
    function  GetDrawingObjectNotifyResult: IDispatch; dispid 2;
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpecificationDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E3FA8FD0-6187-4625-89B7-3C815651944D}
// *********************************************************************//
  ISpecificationDocument = interface(IKompasDocument)
    ['{E3FA8FD0-6187-4625-89B7-3C815651944D}']
    function  Get_AttachedDocuments: IAttachedDocuments; safecall;
    property AttachedDocuments: IAttachedDocuments read Get_AttachedDocuments;
  end;

// *********************************************************************//
// DispIntf:  ISpecificationDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E3FA8FD0-6187-4625-89B7-3C815651944D}
// *********************************************************************//
  ISpecificationDocumentDisp = dispinterface
    ['{E3FA8FD0-6187-4625-89B7-3C815651944D}']
    property AttachedDocuments: IAttachedDocuments readonly dispid 1;
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITextDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {71A589EA-D32F-42C4-BBC4-A51611E85E90}
// *********************************************************************//
  ITextDocument = interface(IKompasDocument)
    ['{71A589EA-D32F-42C4-BBC4-A51611E85E90}']
  end;

// *********************************************************************//
// DispIntf:  ITextDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {71A589EA-D32F-42C4-BBC4-A51611E85E90}
// *********************************************************************//
  ITextDocumentDisp = dispinterface
    ['{71A589EA-D32F-42C4-BBC4-A51611E85E90}']
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPartDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0075EA2A-5498-4E28-BDF3-0288EB168054}
// *********************************************************************//
  IPartDocument = interface(IKompasDocument3D)
    ['{0075EA2A-5498-4E28-BDF3-0288EB168054}']
  end;

// *********************************************************************//
// DispIntf:  IPartDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0075EA2A-5498-4E28-BDF3-0288EB168054}
// *********************************************************************//
  IPartDocumentDisp = dispinterface
    ['{0075EA2A-5498-4E28-BDF3-0288EB168054}']
    property TopPart: IPart7 readonly dispid 5002;
    property HideAllPlanes: WordBool dispid 5003;
    property HideAllAxis: WordBool dispid 5004;
    property HideAllSketches: WordBool dispid 5005;
    property HideAllPlaces: WordBool dispid 5006;
    property HideAllSurfaces: WordBool dispid 5007;
    property HideAllThreads: WordBool dispid 5008;
    property HideAllCurves: WordBool dispid 5009;
    property HideAllControlPoints: WordBool dispid 5010;
    property Perspective: WordBool dispid 5011;
    property DrawMode: Integer dispid 5012;
    property ShadedWireframe: WordBool dispid 5013;
    property CreateObjectsInCurrentLocalCS: WordBool dispid 5014;
    property HideAllDimensions: WordBool dispid 5015;
    property HideAllDesignations: WordBool dispid 5016;
    property HideAllAuxiliaryGeom: WordBool dispid 5017;
    property HideInComponentsMode: WordBool dispid 5018;
    property SelectionManager: ISelectionManager readonly dispid 5019;
    property ChooseManager: IChooseManager readonly dispid 5020;
    function  CreateAttrEx(AttrID: Double; const Libname: WideString; Objects: OleVariant; 
                           const SourcePart: IPart7): IAttribute; dispid 5021;
    property AttributesEx[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; Numb: Double; 
                          Objects: OleVariant; const SourcePart: IPart7]: OleVariant readonly dispid 5022;
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAssemblyDocument
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6B3F33A-3273-43EF-9B8A-7C0AF8FAA129}
// *********************************************************************//
  IAssemblyDocument = interface(IKompasDocument3D)
    ['{F6B3F33A-3273-43EF-9B8A-7C0AF8FAA129}']
  end;

// *********************************************************************//
// DispIntf:  IAssemblyDocumentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6B3F33A-3273-43EF-9B8A-7C0AF8FAA129}
// *********************************************************************//
  IAssemblyDocumentDisp = dispinterface
    ['{F6B3F33A-3273-43EF-9B8A-7C0AF8FAA129}']
    property TopPart: IPart7 readonly dispid 5002;
    property HideAllPlanes: WordBool dispid 5003;
    property HideAllAxis: WordBool dispid 5004;
    property HideAllSketches: WordBool dispid 5005;
    property HideAllPlaces: WordBool dispid 5006;
    property HideAllSurfaces: WordBool dispid 5007;
    property HideAllThreads: WordBool dispid 5008;
    property HideAllCurves: WordBool dispid 5009;
    property HideAllControlPoints: WordBool dispid 5010;
    property Perspective: WordBool dispid 5011;
    property DrawMode: Integer dispid 5012;
    property ShadedWireframe: WordBool dispid 5013;
    property CreateObjectsInCurrentLocalCS: WordBool dispid 5014;
    property HideAllDimensions: WordBool dispid 5015;
    property HideAllDesignations: WordBool dispid 5016;
    property HideAllAuxiliaryGeom: WordBool dispid 5017;
    property HideInComponentsMode: WordBool dispid 5018;
    property SelectionManager: ISelectionManager readonly dispid 5019;
    property ChooseManager: IChooseManager readonly dispid 5020;
    function  CreateAttrEx(AttrID: Double; const Libname: WideString; Objects: OleVariant; 
                           const SourcePart: IPart7): IAttribute; dispid 5021;
    property AttributesEx[Key1: Integer; Key2: Integer; Key3: Integer; Key4: Integer; Numb: Double; 
                          Objects: OleVariant; const SourcePart: IPart7]: OleVariant readonly dispid 5022;
    property DocumentType: DocumentTypeEnum readonly dispid 3000;
    property DocumentFrames: IDocumentFrames readonly dispid 3001;
    function  Close(closeOptions: DocumentCloseOptions): WordBool; dispid 3002;
    procedure Save; dispid 3003;
    procedure SaveAs(const PathName: WideString); dispid 3004;
    property Name: WideString readonly dispid 3005;
    property PathName: WideString readonly dispid 3006;
    property Path: WideString readonly dispid 3007;
    property Visible: WordBool readonly dispid 3008;
    property Active: WordBool dispid 3009;
    property ReadOnly: WordBool dispid 3010;
    property Changed: WordBool readonly dispid 3011;
    property DocumentSettings: IDocumentSettings readonly dispid 3012;
    property SpecificationDescriptions: ISpecificationDescriptions readonly dispid 3013;
    property LayoutSheets: ILayoutSheets readonly dispid 3014;
    property UserDataStoragesMng: IUserDataStoragesMng readonly dispid 3015;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDimensionText
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E0197BA7-C3FB-44A3-9C13-49115A150ED2}
// *********************************************************************//
  IDimensionText = interface(IDispatch)
    ['{E0197BA7-C3FB-44A3-9C13-49115A150ED2}']
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    function  Get_Sign: Integer; safecall;
    procedure Set_Sign(Result: Integer); safecall;
    function  Get_SignFont: WideString; safecall;
    procedure Set_SignFont(const Result: WideString); safecall;
    function  Get_NominalValue: Double; safecall;
    procedure Set_NominalValue(Result: Double); safecall;
    function  Get_AutoNominalValue: WordBool; safecall;
    procedure Set_AutoNominalValue(Result: WordBool); safecall;
    function  Get_ToleranceOn: WordBool; safecall;
    procedure Set_ToleranceOn(Result: WordBool); safecall;
    function  Get_DeviationOn: WordBool; safecall;
    procedure Set_DeviationOn(Result: WordBool); safecall;
    function  Get_DeviationType: ksDimensionDeviationEnum; safecall;
    procedure Set_DeviationType(Result: ksDimensionDeviationEnum); safecall;
    function  Get_Rectangle: WordBool; safecall;
    procedure Set_Rectangle(Result: WordBool); safecall;
    function  Get_Underline: WordBool; safecall;
    procedure Set_Underline(Result: WordBool); safecall;
    function  Get_Brackets: ksDimensionTextBracketsEnum; safecall;
    procedure Set_Brackets(Result: ksDimensionTextBracketsEnum); safecall;
    function  Get_TextAlign: ksDimensionTextAlignEnum; safecall;
    procedure Set_TextAlign(Result: ksDimensionTextAlignEnum); safecall;
    function  Get_Prefix: ITextLine; safecall;
    function  Get_NominalText: ITextLine; safecall;
    function  Get_Tolerance: WideString; safecall;
    procedure Set_Tolerance(const PVal: WideString); safecall;
    function  Get_HighDeviation: ITextLine; safecall;
    function  Get_LowDeviation: ITextLine; safecall;
    function  Get_Unit_: ITextLine; safecall;
    function  Get_Suffix: ITextLine; safecall;
    function  Get_TextUnder: IText; safecall;
    function  Get_TextFormat: ksDimTextFormatEnum; safecall;
    procedure Set_TextFormat(PVal: ksDimTextFormatEnum); safecall;
    property Style: Integer read Get_Style write Set_Style;
    property Sign: Integer read Get_Sign write Set_Sign;
    property SignFont: WideString read Get_SignFont write Set_SignFont;
    property NominalValue: Double read Get_NominalValue write Set_NominalValue;
    property AutoNominalValue: WordBool read Get_AutoNominalValue write Set_AutoNominalValue;
    property ToleranceOn: WordBool read Get_ToleranceOn write Set_ToleranceOn;
    property DeviationOn: WordBool read Get_DeviationOn write Set_DeviationOn;
    property DeviationType: ksDimensionDeviationEnum read Get_DeviationType write Set_DeviationType;
    property Rectangle: WordBool read Get_Rectangle write Set_Rectangle;
    property Underline: WordBool read Get_Underline write Set_Underline;
    property Brackets: ksDimensionTextBracketsEnum read Get_Brackets write Set_Brackets;
    property TextAlign: ksDimensionTextAlignEnum read Get_TextAlign write Set_TextAlign;
    property Prefix: ITextLine read Get_Prefix;
    property NominalText: ITextLine read Get_NominalText;
    property Tolerance: WideString read Get_Tolerance write Set_Tolerance;
    property HighDeviation: ITextLine read Get_HighDeviation;
    property LowDeviation: ITextLine read Get_LowDeviation;
    property Unit_: ITextLine read Get_Unit_;
    property Suffix: ITextLine read Get_Suffix;
    property TextUnder: IText read Get_TextUnder;
    property TextFormat: ksDimTextFormatEnum read Get_TextFormat write Set_TextFormat;
  end;

// *********************************************************************//
// DispIntf:  IDimensionTextDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E0197BA7-C3FB-44A3-9C13-49115A150ED2}
// *********************************************************************//
  IDimensionTextDisp = dispinterface
    ['{E0197BA7-C3FB-44A3-9C13-49115A150ED2}']
    property Style: Integer dispid 5001;
    property Sign: Integer dispid 5002;
    property SignFont: WideString dispid 5003;
    property NominalValue: Double dispid 5004;
    property AutoNominalValue: WordBool dispid 5005;
    property ToleranceOn: WordBool dispid 5006;
    property DeviationOn: WordBool dispid 5007;
    property DeviationType: ksDimensionDeviationEnum dispid 5008;
    property Rectangle: WordBool dispid 5009;
    property Underline: WordBool dispid 5010;
    property Brackets: ksDimensionTextBracketsEnum dispid 5011;
    property TextAlign: ksDimensionTextAlignEnum dispid 5012;
    property Prefix: ITextLine readonly dispid 5013;
    property NominalText: ITextLine readonly dispid 5014;
    property Tolerance: WideString dispid 5015;
    property HighDeviation: ITextLine readonly dispid 5016;
    property LowDeviation: ITextLine readonly dispid 5017;
    property Unit_: ITextLine readonly dispid 5018;
    property Suffix: ITextLine readonly dispid 5019;
    property TextUnder: IText readonly dispid 5020;
    property TextFormat: ksDimTextFormatEnum dispid 5021;
  end;

// *********************************************************************//
// Interface: IDimensionParams
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {534518CC-6577-4273-887A-6B833FDE6ED7}
// *********************************************************************//
  IDimensionParams = interface(IDispatch)
    ['{534518CC-6577-4273-887A-6B833FDE6ED7}']
    function  Get_RemoteLine1: WordBool; safecall;
    procedure Set_RemoteLine1(PVal: WordBool); safecall;
    function  Get_RemoteLine2: WordBool; safecall;
    procedure Set_RemoteLine2(PVal: WordBool); safecall;
    function  Get_ArrowType1: ksArrowEnum; safecall;
    procedure Set_ArrowType1(PVal: ksArrowEnum); safecall;
    function  Get_ArrowType2: ksArrowEnum; safecall;
    procedure Set_ArrowType2(PVal: ksArrowEnum); safecall;
    function  Get_ArrowPos: ksDimensionArrowPosEnum; safecall;
    procedure Set_ArrowPos(PVal: ksDimensionArrowPosEnum); safecall;
    function  Get_TextPos: Integer; safecall;
    procedure Set_TextPos(PVal: Integer); safecall;
    function  Get_TextType: ksDimensionTextTypeEnum; safecall;
    procedure Set_TextType(PVal: ksDimensionTextTypeEnum); safecall;
    function  Get_TextOnLine: ksDimensionTextPosEnum; safecall;
    procedure Set_TextOnLine(PVal: ksDimensionTextPosEnum); safecall;
    function  Get_TextBase: ksDimensionBaseEnum; safecall;
    procedure Set_TextBase(PVal: ksDimensionBaseEnum); safecall;
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(PVal: ksShelfDirectionEnum); safecall;
    function  Get_ShelfAngle: Double; safecall;
    procedure Set_ShelfAngle(PVal: Double); safecall;
    function  Get_ShelfLength: Double; safecall;
    procedure Set_ShelfLength(PVal: Double); safecall;
    function  Get_Gap: WordBool; safecall;
    procedure Set_Gap(PVal: WordBool); safecall;
    function  Get_GapValue: Integer; safecall;
    procedure Set_GapValue(PVal: Integer); safecall;
    property RemoteLine1: WordBool read Get_RemoteLine1 write Set_RemoteLine1;
    property RemoteLine2: WordBool read Get_RemoteLine2 write Set_RemoteLine2;
    property ArrowType1: ksArrowEnum read Get_ArrowType1 write Set_ArrowType1;
    property ArrowType2: ksArrowEnum read Get_ArrowType2 write Set_ArrowType2;
    property ArrowPos: ksDimensionArrowPosEnum read Get_ArrowPos write Set_ArrowPos;
    property TextPos: Integer read Get_TextPos write Set_TextPos;
    property TextType: ksDimensionTextTypeEnum read Get_TextType write Set_TextType;
    property TextOnLine: ksDimensionTextPosEnum read Get_TextOnLine write Set_TextOnLine;
    property TextBase: ksDimensionBaseEnum read Get_TextBase write Set_TextBase;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property ShelfAngle: Double read Get_ShelfAngle write Set_ShelfAngle;
    property ShelfLength: Double read Get_ShelfLength write Set_ShelfLength;
    property Gap: WordBool read Get_Gap write Set_Gap;
    property GapValue: Integer read Get_GapValue write Set_GapValue;
  end;

// *********************************************************************//
// DispIntf:  IDimensionParamsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {534518CC-6577-4273-887A-6B833FDE6ED7}
// *********************************************************************//
  IDimensionParamsDisp = dispinterface
    ['{534518CC-6577-4273-887A-6B833FDE6ED7}']
    property RemoteLine1: WordBool dispid 4001;
    property RemoteLine2: WordBool dispid 4002;
    property ArrowType1: ksArrowEnum dispid 4003;
    property ArrowType2: ksArrowEnum dispid 4004;
    property ArrowPos: ksDimensionArrowPosEnum dispid 4005;
    property TextPos: Integer dispid 4006;
    property TextType: ksDimensionTextTypeEnum dispid 4007;
    property TextOnLine: ksDimensionTextPosEnum dispid 4008;
    property TextBase: ksDimensionBaseEnum dispid 4009;
    property ShelfDirection: ksShelfDirectionEnum dispid 4010;
    property ShelfAngle: Double dispid 4011;
    property ShelfLength: Double dispid 4012;
    property Gap: WordBool dispid 4013;
    property GapValue: Integer dispid 4014;
  end;

// *********************************************************************//
// Interface: ILoadCombination
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E7F1FD16-B641-4264-859C-D47217DA8B04}
// *********************************************************************//
  ILoadCombination = interface(IDispatch)
    ['{E7F1FD16-B641-4264-859C-D47217DA8B04}']
    function  Get_CompletelyLoaded: WordBool; safecall;
    function  Get_LoadCombinations: OleVariant; safecall;
    function  Get_CurrentIndex: Integer; safecall;
    function  Create(const CombinationName: WideString): Integer; safecall;
    function  Delete(LoadCombinationIndex: OleVariant): WordBool; safecall;
    function  Apply(LoadCombinationIndex: OleVariant): WordBool; safecall;
    property CompletelyLoaded: WordBool read Get_CompletelyLoaded;
    property LoadCombinations: OleVariant read Get_LoadCombinations;
    property CurrentIndex: Integer read Get_CurrentIndex;
  end;

// *********************************************************************//
// DispIntf:  ILoadCombinationDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E7F1FD16-B641-4264-859C-D47217DA8B04}
// *********************************************************************//
  ILoadCombinationDisp = dispinterface
    ['{E7F1FD16-B641-4264-859C-D47217DA8B04}']
    property CompletelyLoaded: WordBool readonly dispid 6001;
    property LoadCombinations: OleVariant readonly dispid 6002;
    property CurrentIndex: Integer readonly dispid 6003;
    function  Create(const CombinationName: WideString): Integer; dispid 6004;
    function  Delete(LoadCombinationIndex: OleVariant): WordBool; dispid 6005;
    function  Apply(LoadCombinationIndex: OleVariant): WordBool; dispid 6006;
  end;

// *********************************************************************//
// Interface: IFrameTreesManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9019350-FF1D-4161-B41B-CD1B020ECF36}
// *********************************************************************//
  IFrameTreesManager = interface(IDispatch)
    ['{B9019350-FF1D-4161-B41B-CD1B020ECF36}']
    function  AddTab(const TabCaption: WideString; const OcxClassID: WideString): IDispatch; safecall;
    function  RemoveTab(const Ocx: IDispatch): WordBool; safecall;
    function  Get_ActiveTab: IDispatch; safecall;
    procedure Set_ActiveTab(const Ocx: IDispatch); safecall;
    function  Get_TabsVisible: WordBool; safecall;
    procedure Set_TabsVisible(PVal: WordBool); safecall;
    property ActiveTab: IDispatch read Get_ActiveTab write Set_ActiveTab;
    property TabsVisible: WordBool read Get_TabsVisible write Set_TabsVisible;
  end;

// *********************************************************************//
// DispIntf:  IFrameTreesManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9019350-FF1D-4161-B41B-CD1B020ECF36}
// *********************************************************************//
  IFrameTreesManagerDisp = dispinterface
    ['{B9019350-FF1D-4161-B41B-CD1B020ECF36}']
    function  AddTab(const TabCaption: WideString; const OcxClassID: WideString): IDispatch; dispid 1001;
    function  RemoveTab(const Ocx: IDispatch): WordBool; dispid 1002;
    property ActiveTab: IDispatch dispid 1003;
    property TabsVisible: WordBool dispid 1004;
  end;

// *********************************************************************//
// Interface: IAttrTypeMng
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5378690E-A57D-473F-84DC-CA508B34FAD7}
// *********************************************************************//
  IAttrTypeMng = interface(IDispatch)
    ['{5378690E-A57D-473F-84DC-CA508B34FAD7}']
    function  CreateAttrType(Libname: OleVariant): IAttributeType; safecall;
    function  GetAttrType(AttrID: Double; Libname: OleVariant): IAttributeType; safecall;
    function  ChoiceAttrTypes(HWnd: OLE_HANDLE; Libname: OleVariant): IAttributeType; safecall;
    function  GetAttrTypes(Libname: OleVariant): OleVariant; safecall;
  end;

// *********************************************************************//
// DispIntf:  IAttrTypeMngDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5378690E-A57D-473F-84DC-CA508B34FAD7}
// *********************************************************************//
  IAttrTypeMngDisp = dispinterface
    ['{5378690E-A57D-473F-84DC-CA508B34FAD7}']
    function  CreateAttrType(Libname: OleVariant): IAttributeType; dispid 500;
    function  GetAttrType(AttrID: Double; Libname: OleVariant): IAttributeType; dispid 501;
    function  ChoiceAttrTypes(HWnd: OLE_HANDLE; Libname: OleVariant): IAttributeType; dispid 502;
    function  GetAttrTypes(Libname: OleVariant): OleVariant; dispid 503;
  end;

// *********************************************************************//
// Interface: IPrintJob_OutputParameters
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CB083231-EE0D-4596-B04D-E6A020926557}
// *********************************************************************//
  IPrintJob_OutputParameters = interface(IDispatch)
    ['{CB083231-EE0D-4596-B04D-E6A020926557}']
    procedure Set_NumberOfCopies(PVal: Integer); safecall;
    function  Get_NumberOfCopies: Integer; safecall;
    procedure Set_CollateCopies(PVal: WordBool); safecall;
    function  Get_CollateCopies: WordBool; safecall;
    procedure Set_PlotToFile(PVal: WordBool); safecall;
    function  Get_PlotToFile: WordBool; safecall;
    procedure Set_Color(PVal: ksOutputColorTypeEnum); safecall;
    function  Get_Color: ksOutputColorTypeEnum; safecall;
    procedure Set_OnlyThinLines(PVal: WordBool); safecall;
    function  Get_OnlyThinLines: WordBool; safecall;
    procedure Set_AlternativeFillingOutput(PVal: WordBool); safecall;
    function  Get_AlternativeFillingOutput: WordBool; safecall;
    procedure Set_AccuracyModelOutput(PVal: Integer); safecall;
    function  Get_AccuracyModelOutput: Integer; safecall;
    procedure Set_PageOutputOrder(PVal: Integer); safecall;
    function  Get_PageOutputOrder: Integer; safecall;
    procedure Set_DefaultScale(PVal: Double); safecall;
    function  Get_DefaultScale: Double; safecall;
    procedure Set_AutoScale(PVal: WordBool); safecall;
    function  Get_AutoScale: WordBool; safecall;
    procedure Set_UseCatchSpacing(PVal: WordBool); safecall;
    function  Get_UseCatchSpacing: WordBool; safecall;
    procedure Set_CatchSpacing(PVal: Integer); safecall;
    function  Get_CatchSpacing: Integer; safecall;
    procedure Set_UseHooking(PVal: WordBool); safecall;
    function  Get_UseHooking: WordBool; safecall;
    procedure Set_Hooking(PVal: Integer); safecall;
    function  Get_Hooking: Integer; safecall;
    property NumberOfCopies: Integer read Get_NumberOfCopies write Set_NumberOfCopies;
    property CollateCopies: WordBool read Get_CollateCopies write Set_CollateCopies;
    property PlotToFile: WordBool read Get_PlotToFile write Set_PlotToFile;
    property Color: ksOutputColorTypeEnum read Get_Color write Set_Color;
    property OnlyThinLines: WordBool read Get_OnlyThinLines write Set_OnlyThinLines;
    property AlternativeFillingOutput: WordBool read Get_AlternativeFillingOutput write Set_AlternativeFillingOutput;
    property AccuracyModelOutput: Integer read Get_AccuracyModelOutput write Set_AccuracyModelOutput;
    property PageOutputOrder: Integer read Get_PageOutputOrder write Set_PageOutputOrder;
    property DefaultScale: Double read Get_DefaultScale write Set_DefaultScale;
    property AutoScale: WordBool read Get_AutoScale write Set_AutoScale;
    property UseCatchSpacing: WordBool read Get_UseCatchSpacing write Set_UseCatchSpacing;
    property CatchSpacing: Integer read Get_CatchSpacing write Set_CatchSpacing;
    property UseHooking: WordBool read Get_UseHooking write Set_UseHooking;
    property Hooking: Integer read Get_Hooking write Set_Hooking;
  end;

// *********************************************************************//
// DispIntf:  IPrintJob_OutputParametersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CB083231-EE0D-4596-B04D-E6A020926557}
// *********************************************************************//
  IPrintJob_OutputParametersDisp = dispinterface
    ['{CB083231-EE0D-4596-B04D-E6A020926557}']
    property NumberOfCopies: Integer dispid 2001;
    property CollateCopies: WordBool dispid 2002;
    property PlotToFile: WordBool dispid 2003;
    property Color: ksOutputColorTypeEnum dispid 2004;
    property OnlyThinLines: WordBool dispid 2005;
    property AlternativeFillingOutput: WordBool dispid 2006;
    property AccuracyModelOutput: Integer dispid 2007;
    property PageOutputOrder: Integer dispid 2008;
    property DefaultScale: Double dispid 2009;
    property AutoScale: WordBool dispid 2010;
    property UseCatchSpacing: WordBool dispid 2011;
    property CatchSpacing: Integer dispid 2012;
    property UseHooking: WordBool dispid 2013;
    property Hooking: Integer dispid 2014;
  end;

// *********************************************************************//
// Interface: IProperty
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C389F80D-228D-4FB1-B183-959AEA0B5906}
// *********************************************************************//
  IProperty = interface(IKompasAPIObject)
    ['{C389F80D-228D-4FB1-B183-959AEA0B5906}']
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    function  Get_Id: Double; safecall;
    procedure Set_DataType(PVal: ksPropertyTypeEnum); safecall;
    function  Get_DataType: ksPropertyTypeEnum; safecall;
    function  Get_MinValue: OleVariant; safecall;
    function  Get_MaxValue: OleVariant; safecall;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_SignificantDigitsCount: Integer; safecall;
    procedure Set_SignificantDigitsCount(Result: Integer); safecall;
    function  Get_SourceName: WideString; safecall;
    procedure Set_Comment(const PVal: WideString); safecall;
    function  Get_Comment: WideString; safecall;
    procedure Set_PropertyTypeId(const PVal: WideString); safecall;
    function  Get_PropertyTypeId: WideString; safecall;
    procedure Set_UnitId(const PVal: WideString); safecall;
    function  Get_UnitId: WideString; safecall;
    function  ViewEdit(Parent: OLE_HANDLE; ReadOnly: WordBool): WordBool; safecall;
    function  Delete: WordBool; safecall;
    function  Update: WordBool; safecall;
    function  Get_UseListVal: WordBool; safecall;
    procedure Set_UseListVal(PVal: WordBool); safecall;
    function  Get_ListVal: OleVariant; safecall;
    procedure Set_ListVal(PVal: OleVariant); safecall;
    property Name: WideString read Get_Name write Set_Name;
    property Id: Double read Get_Id;
    property DataType: ksPropertyTypeEnum read Get_DataType write Set_DataType;
    property MinValue: OleVariant read Get_MinValue;
    property MaxValue: OleVariant read Get_MaxValue;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property SignificantDigitsCount: Integer read Get_SignificantDigitsCount write Set_SignificantDigitsCount;
    property SourceName: WideString read Get_SourceName;
    property Comment: WideString read Get_Comment write Set_Comment;
    property PropertyTypeId: WideString read Get_PropertyTypeId write Set_PropertyTypeId;
    property UnitId: WideString read Get_UnitId write Set_UnitId;
    property UseListVal: WordBool read Get_UseListVal write Set_UseListVal;
    property ListVal: OleVariant read Get_ListVal write Set_ListVal;
  end;

// *********************************************************************//
// DispIntf:  IPropertyDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C389F80D-228D-4FB1-B183-959AEA0B5906}
// *********************************************************************//
  IPropertyDisp = dispinterface
    ['{C389F80D-228D-4FB1-B183-959AEA0B5906}']
    property Name: WideString dispid 1;
    property Id: Double readonly dispid 2;
    property DataType: ksPropertyTypeEnum dispid 3;
    property MinValue: OleVariant readonly dispid 4;
    property MaxValue: OleVariant readonly dispid 5;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; dispid 6;
    property ReadOnly: WordBool dispid 7;
    property SignificantDigitsCount: Integer dispid 8;
    property SourceName: WideString readonly dispid 9;
    property Comment: WideString dispid 10;
    property PropertyTypeId: WideString dispid 11;
    property UnitId: WideString dispid 12;
    function  ViewEdit(Parent: OLE_HANDLE; ReadOnly: WordBool): WordBool; dispid 13;
    function  Delete: WordBool; dispid 14;
    function  Update: WordBool; dispid 15;
    property UseListVal: WordBool dispid 16;
    property ListVal: OleVariant dispid 17;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyMng
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FD515235-4DBA-4F81-8D5C-6FE87C834562}
// *********************************************************************//
  IPropertyMng = interface(IDispatch)
    ['{FD515235-4DBA-4F81-8D5C-6FE87C834562}']
    function  Get_PropertyCount(Libname: OleVariant): Integer; safecall;
    function  GetProperty(Libname: OleVariant; Index: OleVariant): IProperty; safecall;
    function  GetProperties(Libname: OleVariant): OleVariant; safecall;
    function  AddProperty(Libname: OleVariant; Val: OleVariant): IProperty; safecall;
    function  RemoveProperty(Libname: OleVariant; Val: OleVariant): WordBool; safecall;
    property PropertyCount[Libname: OleVariant]: Integer read Get_PropertyCount;
  end;

// *********************************************************************//
// DispIntf:  IPropertyMngDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FD515235-4DBA-4F81-8D5C-6FE87C834562}
// *********************************************************************//
  IPropertyMngDisp = dispinterface
    ['{FD515235-4DBA-4F81-8D5C-6FE87C834562}']
    property PropertyCount[Libname: OleVariant]: Integer readonly dispid 1500;
    function  GetProperty(Libname: OleVariant; Index: OleVariant): IProperty; dispid 1501;
    function  GetProperties(Libname: OleVariant): OleVariant; dispid 1502;
    function  AddProperty(Libname: OleVariant; Val: OleVariant): IProperty; dispid 1503;
    function  RemoveProperty(Libname: OleVariant; Val: OleVariant): WordBool; dispid 1504;
  end;

// *********************************************************************//
// Interface: IPropertyKeeper
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AE7377CB-28C6-468E-B667-73117BCDC300}
// *********************************************************************//
  IPropertyKeeper = interface(IDispatch)
    ['{AE7377CB-28C6-468E-B667-73117BCDC300}']
    function  GetPropertyValue(const Property_: IProperty; out Value: OleVariant; 
                               BaseUnit: WordBool; out FromSource: WordBool): WordBool; safecall;
    function  SetPropertyValue(const Property_: IProperty; Value: OleVariant; BaseUnit: WordBool): WordBool; safecall;
  end;

// *********************************************************************//
// DispIntf:  IPropertyKeeperDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AE7377CB-28C6-468E-B667-73117BCDC300}
// *********************************************************************//
  IPropertyKeeperDisp = dispinterface
    ['{AE7377CB-28C6-468E-B667-73117BCDC300}']
    function  GetPropertyValue(const Property_: IProperty; out Value: OleVariant; 
                               BaseUnit: WordBool; out FromSource: WordBool): WordBool; dispid 16000;
    function  SetPropertyValue(const Property_: IProperty; Value: OleVariant; BaseUnit: WordBool): WordBool; dispid 16001;
  end;

// *********************************************************************//
// Interface: IReportProcess
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {29BBF2B8-A2E2-4E7D-BF04-0BB79C89EF35}
// *********************************************************************//
  IReportProcess = interface(IKompasAPIObject)
    ['{29BBF2B8-A2E2-4E7D-BF04-0BB79C89EF35}']
    function  Get_StylesCount: Integer; safecall;
    procedure Set_ActiveStyleIndex(Index: OleVariant); safecall;
    function  Get_ActiveStyleIndex: OleVariant; safecall;
    function  Get_ReportFilter: IReportFilter; safecall;
    procedure Set_ReportFilterUse(Index: WordBool); safecall;
    function  Get_ReportFilterUse: WordBool; safecall;
    property StylesCount: Integer read Get_StylesCount;
    property ActiveStyleIndex: OleVariant read Get_ActiveStyleIndex write Set_ActiveStyleIndex;
    property ReportFilter: IReportFilter read Get_ReportFilter;
    property ReportFilterUse: WordBool read Get_ReportFilterUse write Set_ReportFilterUse;
  end;

// *********************************************************************//
// DispIntf:  IReportProcessDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {29BBF2B8-A2E2-4E7D-BF04-0BB79C89EF35}
// *********************************************************************//
  IReportProcessDisp = dispinterface
    ['{29BBF2B8-A2E2-4E7D-BF04-0BB79C89EF35}']
    property StylesCount: Integer readonly dispid 1;
    property ActiveStyleIndex: OleVariant dispid 2;
    property ReportFilter: IReportFilter readonly dispid 3;
    property ReportFilterUse: WordBool dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IReportFilter
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D111C31-1629-4A0B-89E5-8461CDFA2157}
// *********************************************************************//
  IReportFilter = interface(IDispatch)
    ['{9D111C31-1629-4A0B-89E5-8461CDFA2157}']
    function  Get_ConditionCount: Integer; safecall;
    function  GetCondition(Index: Integer; out UniqId: OleVariant; 
                           out Type_: ksReportFiltersTypeEnum; out Val: OleVariant): WordBool; safecall;
    function  SetCondition(Index: Integer; UniqId: OleVariant; Type_: ksReportFiltersTypeEnum; 
                           Val: OleVariant): WordBool; safecall;
    function  RemoveCondition(Index: Integer): WordBool; safecall;
    function  Clear: WordBool; safecall;
    property ConditionCount: Integer read Get_ConditionCount;
  end;

// *********************************************************************//
// DispIntf:  IReportFilterDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D111C31-1629-4A0B-89E5-8461CDFA2157}
// *********************************************************************//
  IReportFilterDisp = dispinterface
    ['{9D111C31-1629-4A0B-89E5-8461CDFA2157}']
    property ConditionCount: Integer readonly dispid 100;
    function  GetCondition(Index: Integer; out UniqId: OleVariant; 
                           out Type_: ksReportFiltersTypeEnum; out Val: OleVariant): WordBool; dispid 101;
    function  SetCondition(Index: Integer; UniqId: OleVariant; Type_: ksReportFiltersTypeEnum; 
                           Val: OleVariant): WordBool; dispid 102;
    function  RemoveCondition(Index: Integer): WordBool; dispid 103;
    function  Clear: WordBool; dispid 104;
  end;

// *********************************************************************//
// Interface: IPropertyControl1
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7D2A79FF-EC54-4480-B9F3-46F75293B558}
// *********************************************************************//
  IPropertyControl1 = interface(IDispatch)
    ['{7D2A79FF-EC54-4480-B9F3-46F75293B558}']
    procedure Set_PredefineNumber(PVal: Integer); safecall;
    function  Get_PredefineNumber: Integer; safecall;
    procedure Set_UserMenu(PVal: OLE_HANDLE); safecall;
    function  Get_UserMenu: OLE_HANDLE; safecall;
    property PredefineNumber: Integer read Get_PredefineNumber write Set_PredefineNumber;
    property UserMenu: OLE_HANDLE read Get_UserMenu write Set_UserMenu;
  end;

// *********************************************************************//
// DispIntf:  IPropertyControl1Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7D2A79FF-EC54-4480-B9F3-46F75293B558}
// *********************************************************************//
  IPropertyControl1Disp = dispinterface
    ['{7D2A79FF-EC54-4480-B9F3-46F75293B558}']
    property PredefineNumber: Integer dispid 10;
    property UserMenu: OLE_HANDLE dispid 11;
  end;

// *********************************************************************//
// Interface: IPropertyEdit
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1D238C4C-AAD7-4374-B372-013CF7FCEDB4}
// *********************************************************************//
  IPropertyEdit = interface(IPropertyControl)
    ['{1D238C4C-AAD7-4374-B372-013CF7FCEDB4}']
    function  Get_MinValue: OleVariant; safecall;
    function  Get_MaxValue: OleVariant; safecall;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; safecall;
    procedure Set_WithCheck(PVal: WordBool); safecall;
    function  Get_WithCheck: WordBool; safecall;
    procedure Set_CheckState(PVal: CheckStateEnum); safecall;
    function  Get_CheckState: CheckStateEnum; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_Width(PVal: Integer); safecall;
    function  Get_Width: Integer; safecall;
    property MinValue: OleVariant read Get_MinValue;
    property MaxValue: OleVariant read Get_MaxValue;
    property WithCheck: WordBool read Get_WithCheck write Set_WithCheck;
    property CheckState: CheckStateEnum read Get_CheckState write Set_CheckState;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property Width: Integer read Get_Width write Set_Width;
  end;

// *********************************************************************//
// DispIntf:  IPropertyEditDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1D238C4C-AAD7-4374-B372-013CF7FCEDB4}
// *********************************************************************//
  IPropertyEditDisp = dispinterface
    ['{1D238C4C-AAD7-4374-B372-013CF7FCEDB4}']
    property MinValue: OleVariant readonly dispid 101;
    property MaxValue: OleVariant readonly dispid 102;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; dispid 103;
    property WithCheck: WordBool dispid 104;
    property CheckState: CheckStateEnum dispid 105;
    property ReadOnly: WordBool dispid 106;
    property Width: Integer dispid 107;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertySeparator
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4504EFA0-D059-4FD4-B725-FA264D190869}
// *********************************************************************//
  IPropertySeparator = interface(IPropertyControl)
    ['{4504EFA0-D059-4FD4-B725-FA264D190869}']
    procedure Set_SeparatorType(PVal: SeparatorTypeEnum); safecall;
    function  Get_SeparatorType: SeparatorTypeEnum; safecall;
    function  SetImage(IdBmp: OleVariant; HInstance: OleVariant): WordBool; safecall;
    property SeparatorType: SeparatorTypeEnum read Get_SeparatorType write Set_SeparatorType;
  end;

// *********************************************************************//
// DispIntf:  IPropertySeparatorDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4504EFA0-D059-4FD4-B725-FA264D190869}
// *********************************************************************//
  IPropertySeparatorDisp = dispinterface
    ['{4504EFA0-D059-4FD4-B725-FA264D190869}']
    property SeparatorType: SeparatorTypeEnum dispid 101;
    function  SetImage(IdBmp: OleVariant; HInstance: OleVariant): WordBool; dispid 102;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyList
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8F53E9D5-07AD-412E-8C2A-509BC633C4FF}
// *********************************************************************//
  IPropertyList = interface(IPropertyControl)
    ['{8F53E9D5-07AD-412E-8C2A-509BC633C4FF}']
    function  Get_MinValue: OleVariant; safecall;
    function  Get_MaxValue: OleVariant; safecall;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; safecall;
    procedure Set_WithCheck(PVal: WordBool); safecall;
    function  Get_WithCheck: WordBool; safecall;
    procedure Set_CheckState(PVal: CheckStateEnum); safecall;
    function  Get_CheckState: CheckStateEnum; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_Width(PVal: Integer); safecall;
    function  Get_Width: Integer; safecall;
    procedure ClearList; safecall;
    procedure Add(NewVal: OleVariant); safecall;
    procedure Set_Sort(PVal: WordBool); safecall;
    function  Get_Sort: WordBool; safecall;
    function  Find(Val: OleVariant): Integer; safecall;
    function  SetCurrentByIndex(Val: Integer): WordBool; safecall;
    procedure Set_Precision(PVal: Double); safecall;
    function  Get_Precision: Double; safecall;
    function  Get_Count: Integer; safecall;
    property MinValue: OleVariant read Get_MinValue;
    property MaxValue: OleVariant read Get_MaxValue;
    property WithCheck: WordBool read Get_WithCheck write Set_WithCheck;
    property CheckState: CheckStateEnum read Get_CheckState write Set_CheckState;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property Width: Integer read Get_Width write Set_Width;
    property Sort: WordBool read Get_Sort write Set_Sort;
    property Precision: Double read Get_Precision write Set_Precision;
    property Count: Integer read Get_Count;
  end;

// *********************************************************************//
// DispIntf:  IPropertyListDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8F53E9D5-07AD-412E-8C2A-509BC633C4FF}
// *********************************************************************//
  IPropertyListDisp = dispinterface
    ['{8F53E9D5-07AD-412E-8C2A-509BC633C4FF}']
    property MinValue: OleVariant readonly dispid 101;
    property MaxValue: OleVariant readonly dispid 102;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; dispid 103;
    property WithCheck: WordBool dispid 104;
    property CheckState: CheckStateEnum dispid 105;
    property ReadOnly: WordBool dispid 106;
    property Width: Integer dispid 107;
    procedure ClearList; dispid 108;
    procedure Add(NewVal: OleVariant); dispid 109;
    property Sort: WordBool dispid 110;
    function  Find(Val: OleVariant): Integer; dispid 111;
    function  SetCurrentByIndex(Val: Integer): WordBool; dispid 112;
    property Precision: Double dispid 113;
    property Count: Integer readonly dispid 114;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyCheckBox
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9205277D-B480-4AF7-B660-CCDC653F6453}
// *********************************************************************//
  IPropertyCheckBox = interface(IPropertyControl)
    ['{9205277D-B480-4AF7-B660-CCDC653F6453}']
    procedure SetCustomBitmaps(IdUnchecked: OleVariant; IdChecked: OleVariant; 
                               IdIndeterminate: OleVariant; HInstance: OleVariant); safecall;
  end;

// *********************************************************************//
// DispIntf:  IPropertyCheckBoxDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9205277D-B480-4AF7-B660-CCDC653F6453}
// *********************************************************************//
  IPropertyCheckBoxDisp = dispinterface
    ['{9205277D-B480-4AF7-B660-CCDC653F6453}']
    procedure SetCustomBitmaps(IdUnchecked: OleVariant; IdChecked: OleVariant; 
                               IdIndeterminate: OleVariant; HInstance: OleVariant); dispid 101;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyMultiButton
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3920A0BE-0628-47D5-B0F1-1DFEB77964BC}
// *********************************************************************//
  IPropertyMultiButton = interface(IPropertyControl)
    ['{3920A0BE-0628-47D5-B0F1-1DFEB77964BC}']
    procedure Set_ButtonsType(PVal: ButtonTypeEnum); safecall;
    function  Get_ButtonsType: ButtonTypeEnum; safecall;
    procedure Set_ButtonChecked(BtnID: Integer; PVal: WordBool); safecall;
    function  Get_ButtonChecked(BtnID: Integer): WordBool; safecall;
    procedure Set_ButtonEnable(BtnID: Integer; PVal: WordBool); safecall;
    function  Get_ButtonEnable(BtnID: Integer): WordBool; safecall;
    procedure AddButton(BtnID: Integer; Bmp: OleVariant; InsertAt: Integer); safecall;
    procedure Set_ResModule(HInstance: OleVariant); safecall;
    function  Get_ResModule: OleVariant; safecall;
    procedure Set_ButtonTips(BtnID: Integer; const PVal: WideString); safecall;
    function  Get_ButtonTips(BtnID: Integer): WideString; safecall;
    procedure Set_ButtonHint(BtnID: Integer; const PVal: WideString); safecall;
    function  Get_ButtonHint(BtnID: Integer): WideString; safecall;
    procedure Set_NextCommand(PVal: WordBool); safecall;
    function  Get_NextCommand: WordBool; safecall;
    property ButtonsType: ButtonTypeEnum read Get_ButtonsType write Set_ButtonsType;
    property ButtonChecked[BtnID: Integer]: WordBool read Get_ButtonChecked write Set_ButtonChecked;
    property ButtonEnable[BtnID: Integer]: WordBool read Get_ButtonEnable write Set_ButtonEnable;
    property ResModule: OleVariant read Get_ResModule write Set_ResModule;
    property ButtonTips[BtnID: Integer]: WideString read Get_ButtonTips write Set_ButtonTips;
    property ButtonHint[BtnID: Integer]: WideString read Get_ButtonHint write Set_ButtonHint;
    property NextCommand: WordBool read Get_NextCommand write Set_NextCommand;
  end;

// *********************************************************************//
// DispIntf:  IPropertyMultiButtonDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3920A0BE-0628-47D5-B0F1-1DFEB77964BC}
// *********************************************************************//
  IPropertyMultiButtonDisp = dispinterface
    ['{3920A0BE-0628-47D5-B0F1-1DFEB77964BC}']
    property ButtonsType: ButtonTypeEnum dispid 101;
    property ButtonChecked[BtnID: Integer]: WordBool dispid 102;
    property ButtonEnable[BtnID: Integer]: WordBool dispid 103;
    procedure AddButton(BtnID: Integer; Bmp: OleVariant; InsertAt: Integer); dispid 104;
    property ResModule: OleVariant dispid 105;
    property ButtonTips[BtnID: Integer]: WideString dispid 106;
    property ButtonHint[BtnID: Integer]: WideString dispid 107;
    property NextCommand: WordBool dispid 108;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertySlideBox
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E1DB38CD-A6D5-44B8-9AD0-0056B87924DD}
// *********************************************************************//
  IPropertySlideBox = interface(IPropertyControl)
    ['{E1DB38CD-A6D5-44B8-9AD0-0056B87924DD}']
    procedure Set_ResModule(HInstance: OleVariant); safecall;
    function  Get_ResModule: OleVariant; safecall;
    procedure Set_SlideType(Type_: SlideTypeEnum); safecall;
    function  Get_SlideType: SlideTypeEnum; safecall;
    procedure Set_DrawingSlide(Slide: OleVariant); safecall;
    function  Get_DrawingSlide: OleVariant; safecall;
    procedure Set_Width(Width: Integer); safecall;
    function  Get_Width: Integer; safecall;
    procedure Set_Height(Height: Integer); safecall;
    function  Get_Height: Integer; safecall;
    procedure Set_CheckBoxVisibility(PVal: WordBool); safecall;
    function  Get_CheckBoxVisibility: WordBool; safecall;
    procedure UpdateParam; safecall;
    property ResModule: OleVariant read Get_ResModule write Set_ResModule;
    property SlideType: SlideTypeEnum read Get_SlideType write Set_SlideType;
    property DrawingSlide: OleVariant read Get_DrawingSlide write Set_DrawingSlide;
    property Width: Integer read Get_Width write Set_Width;
    property Height: Integer read Get_Height write Set_Height;
    property CheckBoxVisibility: WordBool read Get_CheckBoxVisibility write Set_CheckBoxVisibility;
  end;

// *********************************************************************//
// DispIntf:  IPropertySlideBoxDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E1DB38CD-A6D5-44B8-9AD0-0056B87924DD}
// *********************************************************************//
  IPropertySlideBoxDisp = dispinterface
    ['{E1DB38CD-A6D5-44B8-9AD0-0056B87924DD}']
    property ResModule: OleVariant dispid 101;
    property SlideType: SlideTypeEnum dispid 102;
    property DrawingSlide: OleVariant dispid 103;
    property Width: Integer dispid 104;
    property Height: Integer dispid 105;
    property CheckBoxVisibility: WordBool dispid 106;
    procedure UpdateParam; dispid 107;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyUserControl
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5A902C6C-A030-4F37-A089-91505BAEE466}
// *********************************************************************//
  IPropertyUserControl = interface(IPropertyControl)
    ['{5A902C6C-A030-4F37-A089-91505BAEE466}']
    procedure Set_Width(Width: Integer); safecall;
    function  Get_Width: Integer; safecall;
    procedure Set_Height(Height: Integer); safecall;
    function  Get_Height: Integer; safecall;
    procedure SetOCXControl(const ProgID: WideString); safecall;
    property Width: Integer read Get_Width write Set_Width;
    property Height: Integer read Get_Height write Set_Height;
  end;

// *********************************************************************//
// DispIntf:  IPropertyUserControlDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5A902C6C-A030-4F37-A089-91505BAEE466}
// *********************************************************************//
  IPropertyUserControlDisp = dispinterface
    ['{5A902C6C-A030-4F37-A089-91505BAEE466}']
    property Width: Integer dispid 101;
    property Height: Integer dispid 102;
    procedure SetOCXControl(const ProgID: WideString); dispid 103;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyGrid
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6682B70F-59DB-4BF0-AB01-45B65B1BDED1}
// *********************************************************************//
  IPropertyGrid = interface(IPropertyControl)
    ['{6682B70F-59DB-4BF0-AB01-45B65B1BDED1}']
    procedure Set_ColumnCount(Count: Integer); safecall;
    function  Get_ColumnCount: Integer; safecall;
    procedure Set_RowCount(Count: Integer); safecall;
    function  Get_RowCount: Integer; safecall;
    procedure Set_FixedColumnCount(Count: Integer); safecall;
    function  Get_FixedColumnCount: Integer; safecall;
    procedure Set_FixedRowCount(Count: Integer); safecall;
    function  Get_FixedRowCount: Integer; safecall;
    procedure Set_ColumnWidth(Index: Integer; Width: Integer); safecall;
    function  Get_ColumnWidth(Index: Integer): Integer; safecall;
    procedure Set_RowHeight(Index: Integer; Height: Integer); safecall;
    function  Get_RowHeight(Index: Integer): Integer; safecall;
    procedure Set_EnableEdit(NRow: Integer; NCol: Integer; PVal: WordBool); safecall;
    function  Get_EnableEdit(NRow: Integer; NCol: Integer): WordBool; safecall;
    procedure Set_CellText(NRow: Integer; NCol: Integer; const Text: WideString); safecall;
    function  Get_CellText(NRow: Integer; NCol: Integer): WideString; safecall;
    procedure Set_CellFormat(NRow: Integer; NCol: Integer; Format: Integer); safecall;
    function  Get_CellFormat(NRow: Integer; NCol: Integer): Integer; safecall;
    procedure Set_Width(Width: Integer); safecall;
    function  Get_Width: Integer; safecall;
    procedure Set_Height(Height: Integer); safecall;
    function  Get_Height: Integer; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_AutoSizeColumns(PVal: WordBool); safecall;
    function  Get_AutoSizeColumns: WordBool; safecall;
    procedure UpdateParam; safecall;
    procedure Set_CurrentColumn(Column: Integer); safecall;
    function  Get_CurrentColumn: Integer; safecall;
    procedure Set_CurrentRow(Row: Integer); safecall;
    function  Get_CurrentRow: Integer; safecall;
    property ColumnCount: Integer read Get_ColumnCount write Set_ColumnCount;
    property RowCount: Integer read Get_RowCount write Set_RowCount;
    property FixedColumnCount: Integer read Get_FixedColumnCount write Set_FixedColumnCount;
    property FixedRowCount: Integer read Get_FixedRowCount write Set_FixedRowCount;
    property ColumnWidth[Index: Integer]: Integer read Get_ColumnWidth write Set_ColumnWidth;
    property RowHeight[Index: Integer]: Integer read Get_RowHeight write Set_RowHeight;
    property EnableEdit[NRow: Integer; NCol: Integer]: WordBool read Get_EnableEdit write Set_EnableEdit;
    property CellText[NRow: Integer; NCol: Integer]: WideString read Get_CellText write Set_CellText;
    property CellFormat[NRow: Integer; NCol: Integer]: Integer read Get_CellFormat write Set_CellFormat;
    property Width: Integer read Get_Width write Set_Width;
    property Height: Integer read Get_Height write Set_Height;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property AutoSizeColumns: WordBool read Get_AutoSizeColumns write Set_AutoSizeColumns;
    property CurrentColumn: Integer read Get_CurrentColumn write Set_CurrentColumn;
    property CurrentRow: Integer read Get_CurrentRow write Set_CurrentRow;
  end;

// *********************************************************************//
// DispIntf:  IPropertyGridDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6682B70F-59DB-4BF0-AB01-45B65B1BDED1}
// *********************************************************************//
  IPropertyGridDisp = dispinterface
    ['{6682B70F-59DB-4BF0-AB01-45B65B1BDED1}']
    property ColumnCount: Integer dispid 101;
    property RowCount: Integer dispid 102;
    property FixedColumnCount: Integer dispid 103;
    property FixedRowCount: Integer dispid 104;
    property ColumnWidth[Index: Integer]: Integer dispid 105;
    property RowHeight[Index: Integer]: Integer dispid 106;
    property EnableEdit[NRow: Integer; NCol: Integer]: WordBool dispid 107;
    property CellText[NRow: Integer; NCol: Integer]: WideString dispid 108;
    property CellFormat[NRow: Integer; NCol: Integer]: Integer dispid 109;
    property Width: Integer dispid 110;
    property Height: Integer dispid 111;
    property ReadOnly: WordBool dispid 112;
    property AutoSizeColumns: WordBool dispid 113;
    procedure UpdateParam; dispid 114;
    property CurrentColumn: Integer dispid 115;
    property CurrentRow: Integer dispid 116;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyTextButton
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3CDFE85F-643D-4008-AE32-379C0EB3FB7F}
// *********************************************************************//
  IPropertyTextButton = interface(IPropertyControl)
    ['{3CDFE85F-643D-4008-AE32-379C0EB3FB7F}']
  end;

// *********************************************************************//
// DispIntf:  IPropertyTextButtonDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3CDFE85F-643D-4008-AE32-379C0EB3FB7F}
// *********************************************************************//
  IPropertyTextButtonDisp = dispinterface
    ['{3CDFE85F-643D-4008-AE32-379C0EB3FB7F}']
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertySpinEdit
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F214A46D-2BA9-40AD-A32D-E696EF9C895A}
// *********************************************************************//
  IPropertySpinEdit = interface(IPropertyControl)
    ['{F214A46D-2BA9-40AD-A32D-E696EF9C895A}']
    function  Get_MinValue: OleVariant; safecall;
    function  Get_MaxValue: OleVariant; safecall;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; safecall;
    procedure Set_WithCheck(PVal: WordBool); safecall;
    function  Get_WithCheck: WordBool; safecall;
    procedure Set_CheckState(PVal: CheckStateEnum); safecall;
    function  Get_CheckState: CheckStateEnum; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_Width(PVal: Integer); safecall;
    function  Get_Width: Integer; safecall;
    property MinValue: OleVariant read Get_MinValue;
    property MaxValue: OleVariant read Get_MaxValue;
    property WithCheck: WordBool read Get_WithCheck write Set_WithCheck;
    property CheckState: CheckStateEnum read Get_CheckState write Set_CheckState;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property Width: Integer read Get_Width write Set_Width;
  end;

// *********************************************************************//
// DispIntf:  IPropertySpinEditDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F214A46D-2BA9-40AD-A32D-E696EF9C895A}
// *********************************************************************//
  IPropertySpinEditDisp = dispinterface
    ['{F214A46D-2BA9-40AD-A32D-E696EF9C895A}']
    property MinValue: OleVariant readonly dispid 101;
    property MaxValue: OleVariant readonly dispid 102;
    function  SetValueRange(MinVal: OleVariant; MaxVal: OleVariant): WordBool; dispid 103;
    property WithCheck: WordBool dispid 104;
    property CheckState: CheckStateEnum dispid 105;
    property ReadOnly: WordBool dispid 106;
    property Width: Integer dispid 107;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyFileName
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DB1F3224-837E-437F-8944-6FB9703F528B}
// *********************************************************************//
  IPropertyFileName = interface(IPropertyControl)
    ['{DB1F3224-837E-437F-8944-6FB9703F528B}']
    procedure Set_CreateOpenButton(PVal: WordBool); safecall;
    function  Get_CreateOpenButton: WordBool; safecall;
    procedure Set_Bitmap(Param1: OleVariant); safecall;
    procedure Set_Extension(const PVal: WideString); safecall;
    function  Get_Extension: WideString; safecall;
    procedure Set_Filter(const PVal: WideString); safecall;
    function  Get_Filter: WideString; safecall;
    procedure Set_ResModule(HInstance: OleVariant); safecall;
    function  Get_ResModule: OleVariant; safecall;
    procedure Set_ReadOnly(PVal: WordBool); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_Width(PVal: Integer); safecall;
    function  Get_Width: Integer; safecall;
    property CreateOpenButton: WordBool read Get_CreateOpenButton write Set_CreateOpenButton;
    property Bitmap: OleVariant write Set_Bitmap;
    property Extension: WideString read Get_Extension write Set_Extension;
    property Filter: WideString read Get_Filter write Set_Filter;
    property ResModule: OleVariant read Get_ResModule write Set_ResModule;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property Width: Integer read Get_Width write Set_Width;
  end;

// *********************************************************************//
// DispIntf:  IPropertyFileNameDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DB1F3224-837E-437F-8944-6FB9703F528B}
// *********************************************************************//
  IPropertyFileNameDisp = dispinterface
    ['{DB1F3224-837E-437F-8944-6FB9703F528B}']
    property CreateOpenButton: WordBool dispid 101;
    property Bitmap: OleVariant writeonly dispid 102;
    property Extension: WideString dispid 103;
    property Filter: WideString dispid 104;
    property ResModule: OleVariant dispid 105;
    property ReadOnly: WordBool dispid 106;
    property Width: Integer dispid 107;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyColor
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FC5CDCFB-3F67-43A1-8FC4-1278B901CE0E}
// *********************************************************************//
  IPropertyColor = interface(IPropertyControl)
    ['{FC5CDCFB-3F67-43A1-8FC4-1278B901CE0E}']
    procedure Set_Width(PVal: Integer); safecall;
    function  Get_Width: Integer; safecall;
    procedure Set_EnableDefaultButton(PVal: WordBool); safecall;
    function  Get_EnableDefaultButton: WordBool; safecall;
    procedure Set_DefaultColor(PVal: Integer); safecall;
    function  Get_DefaultColor: Integer; safecall;
    procedure Set_DefaultButtonName(const PVal: WideString); safecall;
    function  Get_DefaultButtonName: WideString; safecall;
    property Width: Integer read Get_Width write Set_Width;
    property EnableDefaultButton: WordBool read Get_EnableDefaultButton write Set_EnableDefaultButton;
    property DefaultColor: Integer read Get_DefaultColor write Set_DefaultColor;
    property DefaultButtonName: WideString read Get_DefaultButtonName write Set_DefaultButtonName;
  end;

// *********************************************************************//
// DispIntf:  IPropertyColorDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FC5CDCFB-3F67-43A1-8FC4-1278B901CE0E}
// *********************************************************************//
  IPropertyColorDisp = dispinterface
    ['{FC5CDCFB-3F67-43A1-8FC4-1278B901CE0E}']
    property Width: Integer dispid 101;
    property EnableDefaultButton: WordBool dispid 102;
    property DefaultColor: Integer dispid 103;
    property DefaultButtonName: WideString dispid 104;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyEditList
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FDB82760-7EA3-408E-8699-A8392ACFD810}
// *********************************************************************//
  IPropertyEditList = interface(IPropertyControl)
    ['{FDB82760-7EA3-408E-8699-A8392ACFD810}']
    function  Get_ListType: ksEditListTypeEnum; safecall;
    procedure Set_ListType(PVal: ksEditListTypeEnum); safecall;
    function  Get_ItemChecked(Index: Integer): WordBool; safecall;
    procedure Set_ItemChecked(Index: Integer; PVal: WordBool); safecall;
    function  Get_MultySelect: WordBool; safecall;
    procedure Set_MultySelect(PVal: WordBool); safecall;
    function  Get_ItemSelected(Index: Integer): WordBool; safecall;
    procedure Set_ItemSelected(Index: Integer; PVal: WordBool); safecall;
    function  Get_Sort: WordBool; safecall;
    procedure Set_Sort(PVal: WordBool); safecall;
    procedure ClearList; safecall;
    procedure Add(const NewVal: WideString); safecall;
    procedure Delete(Index: OleVariant); safecall;
    function  Get_ItemsCount: Integer; safecall;
    procedure Set_ItemValue(Index: OleVariant; const PVal: WideString); safecall;
    function  Get_ItemValue(Index: OleVariant): WideString; safecall;
    function  Find(Val: OleVariant): Integer; safecall;
    property ListType: ksEditListTypeEnum read Get_ListType write Set_ListType;
    property ItemChecked[Index: Integer]: WordBool read Get_ItemChecked write Set_ItemChecked;
    property MultySelect: WordBool read Get_MultySelect write Set_MultySelect;
    property ItemSelected[Index: Integer]: WordBool read Get_ItemSelected write Set_ItemSelected;
    property Sort: WordBool read Get_Sort write Set_Sort;
    property ItemsCount: Integer read Get_ItemsCount;
    property ItemValue[Index: OleVariant]: WideString read Get_ItemValue write Set_ItemValue;
  end;

// *********************************************************************//
// DispIntf:  IPropertyEditListDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FDB82760-7EA3-408E-8699-A8392ACFD810}
// *********************************************************************//
  IPropertyEditListDisp = dispinterface
    ['{FDB82760-7EA3-408E-8699-A8392ACFD810}']
    property ListType: ksEditListTypeEnum dispid 101;
    property ItemChecked[Index: Integer]: WordBool dispid 102;
    property MultySelect: WordBool dispid 103;
    property ItemSelected[Index: Integer]: WordBool dispid 104;
    property Sort: WordBool dispid 105;
    procedure ClearList; dispid 106;
    procedure Add(const NewVal: WideString); dispid 107;
    procedure Delete(Index: OleVariant); dispid 108;
    property ItemsCount: Integer readonly dispid 109;
    property ItemValue[Index: OleVariant]: WideString dispid 110;
    function  Find(Val: OleVariant): Integer; dispid 111;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPropertyToolBar
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C2523B7E-EB4B-45DB-8E3B-9D6CCED99333}
// *********************************************************************//
  IPropertyToolBar = interface(IDispatch)
    ['{C2523B7E-EB4B-45DB-8E3B-9D6CCED99333}']
    procedure Set_ButtonChecked(BtnID: Integer; PVal: WordBool); safecall;
    function  Get_ButtonChecked(BtnID: Integer): WordBool; safecall;
    procedure Set_ButtonEnable(BtnID: Integer; PVal: WordBool); safecall;
    function  Get_ButtonEnable(BtnID: Integer): WordBool; safecall;
    procedure AddButton(BtnID: Integer; Bmp: OleVariant; InsertAt: Integer); safecall;
    procedure Set_ResModule(HInstance: OleVariant); safecall;
    function  Get_ResModule: OleVariant; safecall;
    procedure Set_ButtonTips(BtnID: Integer; const PVal: WideString); safecall;
    function  Get_ButtonTips(BtnID: Integer): WideString; safecall;
    procedure Set_ButtonHint(BtnID: Integer; const PVal: WideString); safecall;
    function  Get_ButtonHint(BtnID: Integer): WideString; safecall;
    property ButtonChecked[BtnID: Integer]: WordBool read Get_ButtonChecked write Set_ButtonChecked;
    property ButtonEnable[BtnID: Integer]: WordBool read Get_ButtonEnable write Set_ButtonEnable;
    property ResModule: OleVariant read Get_ResModule write Set_ResModule;
    property ButtonTips[BtnID: Integer]: WideString read Get_ButtonTips write Set_ButtonTips;
    property ButtonHint[BtnID: Integer]: WideString read Get_ButtonHint write Set_ButtonHint;
  end;

// *********************************************************************//
// DispIntf:  IPropertyToolBarDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C2523B7E-EB4B-45DB-8E3B-9D6CCED99333}
// *********************************************************************//
  IPropertyToolBarDisp = dispinterface
    ['{C2523B7E-EB4B-45DB-8E3B-9D6CCED99333}']
    property ButtonChecked[BtnID: Integer]: WordBool dispid 501;
    property ButtonEnable[BtnID: Integer]: WordBool dispid 502;
    procedure AddButton(BtnID: Integer; Bmp: OleVariant; InsertAt: Integer); dispid 503;
    property ResModule: OleVariant dispid 504;
    property ButtonTips[BtnID: Integer]: WideString dispid 505;
    property ButtonHint[BtnID: Integer]: WideString dispid 506;
  end;

// *********************************************************************//
// Interface: IPropertyBmpList
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D18D34F5-0028-4853-998C-25A48D141B43}
// *********************************************************************//
  IPropertyBmpList = interface(IPropertyControl)
    ['{D18D34F5-0028-4853-998C-25A48D141B43}']
    procedure Add(const NewStr: WideString; NewBmp: OleVariant); safecall;
    function  Get_Count: Integer; safecall;
    procedure ClearList; safecall;
    function  Find(const Val: WideString): Integer; safecall;
    procedure Set_CurrentIndex(PVal: Integer); safecall;
    function  Get_CurrentIndex: Integer; safecall;
    procedure Set_ResModule(HInstance: OleVariant); safecall;
    function  Get_ResModule: OleVariant; safecall;
    property Count: Integer read Get_Count;
    property CurrentIndex: Integer read Get_CurrentIndex write Set_CurrentIndex;
    property ResModule: OleVariant read Get_ResModule write Set_ResModule;
  end;

// *********************************************************************//
// DispIntf:  IPropertyBmpListDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D18D34F5-0028-4853-998C-25A48D141B43}
// *********************************************************************//
  IPropertyBmpListDisp = dispinterface
    ['{D18D34F5-0028-4853-998C-25A48D141B43}']
    procedure Add(const NewStr: WideString; NewBmp: OleVariant); dispid 101;
    property Count: Integer readonly dispid 102;
    procedure ClearList; dispid 103;
    function  Find(const Val: WideString): Integer; dispid 104;
    property CurrentIndex: Integer dispid 105;
    property ResModule: OleVariant dispid 106;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IProcessInfoWindow
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {06F93FBF-C65A-49B1-83DB-C736BA33F0A5}
// *********************************************************************//
  IProcessInfoWindow = interface(IDispatch)
    ['{06F93FBF-C65A-49B1-83DB-C736BA33F0A5}']
    procedure Set_CreateWindow(PVal: WordBool); safecall;
    function  Get_CreateWindow: WordBool; safecall;
    procedure Set_WindowCaption(const PVal: WideString); safecall;
    function  Get_WindowCaption: WideString; safecall;
    procedure Set_CloseProcess(PVal: WordBool); safecall;
    function  Get_CloseProcess: WordBool; safecall;
    procedure Set_Visible(PVal: WordBool); safecall;
    function  Get_Visible: WordBool; safecall;
    procedure Set_Text(const PVal: WideString); safecall;
    function  Get_Text: WideString; safecall;
    procedure Set_HelpId(PVal: Integer); safecall;
    function  Get_HelpId: Integer; safecall;
    property CreateWindow: WordBool read Get_CreateWindow write Set_CreateWindow;
    property WindowCaption: WideString read Get_WindowCaption write Set_WindowCaption;
    property CloseProcess: WordBool read Get_CloseProcess write Set_CloseProcess;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property Text: WideString read Get_Text write Set_Text;
    property HelpId: Integer read Get_HelpId write Set_HelpId;
  end;

// *********************************************************************//
// DispIntf:  IProcessInfoWindowDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {06F93FBF-C65A-49B1-83DB-C736BA33F0A5}
// *********************************************************************//
  IProcessInfoWindowDisp = dispinterface
    ['{06F93FBF-C65A-49B1-83DB-C736BA33F0A5}']
    property CreateWindow: WordBool dispid 501;
    property WindowCaption: WideString dispid 502;
    property CloseProcess: WordBool dispid 503;
    property Visible: WordBool dispid 504;
    property Text: WideString dispid 505;
    property HelpId: Integer dispid 506;
  end;

// *********************************************************************//
// Interface: IPropertyLibExplorer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2A214701-0BCB-406C-B57F-6DFADD799A64}
// *********************************************************************//
  IPropertyLibExplorer = interface(IPropertyControl)
    ['{2A214701-0BCB-406C-B57F-6DFADD799A64}']
    procedure Set_FileName(const PVal: WideString); safecall;
    function  Get_FileName: WideString; safecall;
    procedure Set_RootName(const PVal: WideString); safecall;
    function  Get_RootName: WideString; safecall;
    function  Get_FileValue: WordBool; safecall;
    property FileName: WideString read Get_FileName write Set_FileName;
    property RootName: WideString read Get_RootName write Set_RootName;
    property FileValue: WordBool read Get_FileValue;
  end;

// *********************************************************************//
// DispIntf:  IPropertyLibExplorerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2A214701-0BCB-406C-B57F-6DFADD799A64}
// *********************************************************************//
  IPropertyLibExplorerDisp = dispinterface
    ['{2A214701-0BCB-406C-B57F-6DFADD799A64}']
    property FileName: WideString dispid 101;
    property RootName: WideString dispid 102;
    property FileValue: WordBool readonly dispid 103;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAssociationView
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0825F23C-0A73-48DE-BEAB-DA2FF39962C3}
// *********************************************************************//
  IAssociationView = interface(IView)
    ['{0825F23C-0A73-48DE-BEAB-DA2FF39962C3}']
    function  Get_SourceFileName: WideString; safecall;
    procedure Set_SourceFileName(const Result: WideString); safecall;
    function  Get_ProjectionName: WideString; safecall;
    procedure Set_ProjectionName(const Result: WideString); safecall;
    function  Get_ExplodedView: WordBool; safecall;
    procedure Set_ExplodedView(Result: WordBool); safecall;
    procedure Set_DimensionLayoutScaling(Param1: WordBool); safecall;
    function  Get_ProjectionLink: WordBool; safecall;
    procedure Set_ProjectionLink(Result: WordBool); safecall;
    function  Get_Section: WordBool; safecall;
    procedure Set_Section(Result: WordBool); safecall;
    function  Get_Unfold: WordBool; safecall;
    procedure Set_Unfold(Result: WordBool); safecall;
    function  Get_VisibleLinesStyle: Integer; safecall;
    procedure Set_VisibleLinesStyle(Result: Integer); safecall;
    function  Get_HiddenLines: WordBool; safecall;
    procedure Set_HiddenLines(Result: WordBool); safecall;
    function  Get_HiddenLinesVisible: WordBool; safecall;
    procedure Set_HiddenLinesVisible(Result: WordBool); safecall;
    function  Get_HiddenLinesStyle: Integer; safecall;
    procedure Set_HiddenLinesStyle(Result: Integer); safecall;
    function  Get_BreakLinesVisible: WordBool; safecall;
    procedure Set_BreakLinesVisible(Result: WordBool); safecall;
    function  Get_BreakLinesStyle: Integer; safecall;
    procedure Set_BreakLinesStyle(Result: Integer); safecall;
    function  Get_BendLinesVisible: WordBool; safecall;
    procedure Set_BendLinesVisible(Result: WordBool); safecall;
    function  Get_BendLinesStyle: Integer; safecall;
    procedure Set_BendLinesStyle(Result: Integer); safecall;
    function  Get_BaseView: IView; safecall;
    procedure Set_BaseView(const Result: IView); safecall;
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Result: IDrawingObject); safecall;
    function  Get_Local: WordBool; safecall;
    procedure Set_Local(Result: WordBool); safecall;
    function  CreateLocalView(const Contour: IDrawingObject): WordBool; safecall;
    function  Get_SameHatch: WordBool; safecall;
    procedure Set_SameHatch(Result: WordBool); safecall;
    property SourceFileName: WideString read Get_SourceFileName write Set_SourceFileName;
    property ProjectionName: WideString read Get_ProjectionName write Set_ProjectionName;
    property ExplodedView: WordBool read Get_ExplodedView write Set_ExplodedView;
    property DimensionLayoutScaling: WordBool write Set_DimensionLayoutScaling;
    property ProjectionLink: WordBool read Get_ProjectionLink write Set_ProjectionLink;
    property Section: WordBool read Get_Section write Set_Section;
    property Unfold: WordBool read Get_Unfold write Set_Unfold;
    property VisibleLinesStyle: Integer read Get_VisibleLinesStyle write Set_VisibleLinesStyle;
    property HiddenLines: WordBool read Get_HiddenLines write Set_HiddenLines;
    property HiddenLinesVisible: WordBool read Get_HiddenLinesVisible write Set_HiddenLinesVisible;
    property HiddenLinesStyle: Integer read Get_HiddenLinesStyle write Set_HiddenLinesStyle;
    property BreakLinesVisible: WordBool read Get_BreakLinesVisible write Set_BreakLinesVisible;
    property BreakLinesStyle: Integer read Get_BreakLinesStyle write Set_BreakLinesStyle;
    property BendLinesVisible: WordBool read Get_BendLinesVisible write Set_BendLinesVisible;
    property BendLinesStyle: Integer read Get_BendLinesStyle write Set_BendLinesStyle;
    property BaseView: IView read Get_BaseView write Set_BaseView;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property Local: WordBool read Get_Local write Set_Local;
    property SameHatch: WordBool read Get_SameHatch write Set_SameHatch;
  end;

// *********************************************************************//
// DispIntf:  IAssociationViewDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0825F23C-0A73-48DE-BEAB-DA2FF39962C3}
// *********************************************************************//
  IAssociationViewDisp = dispinterface
    ['{0825F23C-0A73-48DE-BEAB-DA2FF39962C3}']
    property SourceFileName: WideString dispid 2000;
    property ProjectionName: WideString dispid 2001;
    property ExplodedView: WordBool dispid 2002;
    property DimensionLayoutScaling: WordBool writeonly dispid 2003;
    property ProjectionLink: WordBool dispid 2004;
    property Section: WordBool dispid 2005;
    property Unfold: WordBool dispid 2006;
    property VisibleLinesStyle: Integer dispid 2007;
    property HiddenLines: WordBool dispid 2008;
    property HiddenLinesVisible: WordBool dispid 2009;
    property HiddenLinesStyle: Integer dispid 2010;
    property BreakLinesVisible: WordBool dispid 2011;
    property BreakLinesStyle: Integer dispid 2012;
    property BendLinesVisible: WordBool dispid 2013;
    property BendLinesStyle: Integer dispid 2014;
    property BaseView: IView dispid 2015;
    property BaseObject: IDrawingObject dispid 2016;
    property Local: WordBool dispid 2017;
    function  CreateLocalView(const Contour: IDrawingObject): WordBool; dispid 2018;
    property SameHatch: WordBool dispid 2019;
    property Number: Integer dispid 1;
    property Name: WideString dispid 2;
    property Background: WordBool dispid 3;
    property Visible: WordBool dispid 4;
    property Current: WordBool dispid 5;
    property Color: Integer dispid 6;
    property Comment: WideString dispid 7;
    property ObjectCount: Integer readonly dispid 8;
    property X: Double dispid 9;
    property Y: Double dispid 10;
    property Scale: Double dispid 11;
    property Angle: Double dispid 12;
    property ViewType: LtViewType readonly dispid 13;
    property Layers: ILayers readonly dispid 14;
    property Variables: OleVariant readonly dispid 15;
    property Variable[Index: OleVariant]: IVariable7 readonly dispid 16;
    property VariablesCount: Integer readonly dispid 17;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IViewDesignation
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5F9580DA-915C-4C28-991D-5DFFE3BF3B3C}
// *********************************************************************//
  IViewDesignation = interface(IDispatch)
    ['{5F9580DA-915C-4C28-991D-5DFFE3BF3B3C}']
    function  Get_ShowName: WordBool; safecall;
    procedure Set_ShowName(PVal: WordBool); safecall;
    function  Get_ShowUnfold: WordBool; safecall;
    procedure Set_ShowUnfold(PVal: WordBool); safecall;
    function  Get_ShowScale: WordBool; safecall;
    procedure Set_ShowScale(PVal: WordBool); safecall;
    function  Get_ShowTurn: WordBool; safecall;
    procedure Set_ShowTurn(PVal: WordBool); safecall;
    function  Get_ShowAngle: WordBool; safecall;
    procedure Set_ShowAngle(PVal: WordBool); safecall;
    function  Get_ShowPage: WordBool; safecall;
    procedure Set_ShowPage(PVal: WordBool); safecall;
    function  Get_ShowZone: WordBool; safecall;
    procedure Set_ShowZone(PVal: WordBool); safecall;
    function  Get_Designation: WideString; safecall;
    function  Get_RefObject: OleVariant; safecall;
    procedure Set_RefObject(PVal: OleVariant); safecall;
    property ShowName: WordBool read Get_ShowName write Set_ShowName;
    property ShowUnfold: WordBool read Get_ShowUnfold write Set_ShowUnfold;
    property ShowScale: WordBool read Get_ShowScale write Set_ShowScale;
    property ShowTurn: WordBool read Get_ShowTurn write Set_ShowTurn;
    property ShowAngle: WordBool read Get_ShowAngle write Set_ShowAngle;
    property ShowPage: WordBool read Get_ShowPage write Set_ShowPage;
    property ShowZone: WordBool read Get_ShowZone write Set_ShowZone;
    property Designation: WideString read Get_Designation;
    property RefObject: OleVariant read Get_RefObject write Set_RefObject;
  end;

// *********************************************************************//
// DispIntf:  IViewDesignationDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5F9580DA-915C-4C28-991D-5DFFE3BF3B3C}
// *********************************************************************//
  IViewDesignationDisp = dispinterface
    ['{5F9580DA-915C-4C28-991D-5DFFE3BF3B3C}']
    property ShowName: WordBool dispid 4001;
    property ShowUnfold: WordBool dispid 4002;
    property ShowScale: WordBool dispid 4003;
    property ShowTurn: WordBool dispid 4004;
    property ShowAngle: WordBool dispid 4005;
    property ShowPage: WordBool dispid 4006;
    property ShowZone: WordBool dispid 4007;
    property Designation: WideString readonly dispid 4008;
    property RefObject: OleVariant dispid 4009;
  end;

// *********************************************************************//
// Interface: IAssociationViewElements
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E4E42871-E799-4273-8EDB-E5EF83CC66C2}
// *********************************************************************//
  IAssociationViewElements = interface(IDispatch)
    ['{E4E42871-E799-4273-8EDB-E5EF83CC66C2}']
    function  Get_ProjectBodies: WordBool; safecall;
    procedure Set_ProjectBodies(Result: WordBool); safecall;
    function  Get_ProjectSurfaces: WordBool; safecall;
    procedure Set_ProjectSurfaces(Result: WordBool); safecall;
    function  Get_HiddenObjectsVisible: WordBool; safecall;
    procedure Set_HiddenObjectsVisible(Result: WordBool); safecall;
    function  Get_ProjectThreads: WordBool; safecall;
    procedure Set_ProjectThreads(Result: WordBool); safecall;
    function  Get_ProjectDimensions: WordBool; safecall;
    procedure Set_ProjectDimensions(Result: WordBool); safecall;
    function  Get_ProjectRoughs: WordBool; safecall;
    procedure Set_ProjectRoughs(Result: WordBool); safecall;
    function  Get_ProjectBases: WordBool; safecall;
    procedure Set_ProjectBases(Result: WordBool); safecall;
    function  Get_ProjectTolerances: WordBool; safecall;
    procedure Set_ProjectTolerances(Result: WordBool); safecall;
    function  Get_ProjectPositions: WordBool; safecall;
    procedure Set_ProjectPositions(Result: WordBool); safecall;
    function  Get_ProjectLeaders: WordBool; safecall;
    procedure Set_ProjectLeaders(Result: WordBool); safecall;
    function  Get_ProjectMarkLeaders: WordBool; safecall;
    procedure Set_ProjectMarkLeaders(Result: WordBool); safecall;
    function  Get_ProjectBrandLeaders: WordBool; safecall;
    procedure Set_ProjectBrandLeaders(Result: WordBool); safecall;
    function  Get_ProjectHiddenComponents: WordBool; safecall;
    procedure Set_ProjectHiddenComponents(Result: WordBool); safecall;
    function  Get_ProjectStandartElements: WordBool; safecall;
    procedure Set_ProjectStandartElements(Result: WordBool); safecall;
    function  Get_ProjectCurves: WordBool; safecall;
    procedure Set_ProjectCurves(Result: WordBool); safecall;
    function  Get_ProjectPoints: WordBool; safecall;
    procedure Set_ProjectPoints(Result: WordBool); safecall;
    function  Get_ProjectAllObjects: WordBool; safecall;
    procedure Set_ProjectAllObjects(Result: WordBool); safecall;
    function  Get_ProjectAllDesignations: WordBool; safecall;
    procedure Set_ProjectAllDesignations(Result: WordBool); safecall;
    property ProjectBodies: WordBool read Get_ProjectBodies write Set_ProjectBodies;
    property ProjectSurfaces: WordBool read Get_ProjectSurfaces write Set_ProjectSurfaces;
    property HiddenObjectsVisible: WordBool read Get_HiddenObjectsVisible write Set_HiddenObjectsVisible;
    property ProjectThreads: WordBool read Get_ProjectThreads write Set_ProjectThreads;
    property ProjectDimensions: WordBool read Get_ProjectDimensions write Set_ProjectDimensions;
    property ProjectRoughs: WordBool read Get_ProjectRoughs write Set_ProjectRoughs;
    property ProjectBases: WordBool read Get_ProjectBases write Set_ProjectBases;
    property ProjectTolerances: WordBool read Get_ProjectTolerances write Set_ProjectTolerances;
    property ProjectPositions: WordBool read Get_ProjectPositions write Set_ProjectPositions;
    property ProjectLeaders: WordBool read Get_ProjectLeaders write Set_ProjectLeaders;
    property ProjectMarkLeaders: WordBool read Get_ProjectMarkLeaders write Set_ProjectMarkLeaders;
    property ProjectBrandLeaders: WordBool read Get_ProjectBrandLeaders write Set_ProjectBrandLeaders;
    property ProjectHiddenComponents: WordBool read Get_ProjectHiddenComponents write Set_ProjectHiddenComponents;
    property ProjectStandartElements: WordBool read Get_ProjectStandartElements write Set_ProjectStandartElements;
    property ProjectCurves: WordBool read Get_ProjectCurves write Set_ProjectCurves;
    property ProjectPoints: WordBool read Get_ProjectPoints write Set_ProjectPoints;
    property ProjectAllObjects: WordBool read Get_ProjectAllObjects write Set_ProjectAllObjects;
    property ProjectAllDesignations: WordBool read Get_ProjectAllDesignations write Set_ProjectAllDesignations;
  end;

// *********************************************************************//
// DispIntf:  IAssociationViewElementsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E4E42871-E799-4273-8EDB-E5EF83CC66C2}
// *********************************************************************//
  IAssociationViewElementsDisp = dispinterface
    ['{E4E42871-E799-4273-8EDB-E5EF83CC66C2}']
    property ProjectBodies: WordBool dispid 2500;
    property ProjectSurfaces: WordBool dispid 2501;
    property HiddenObjectsVisible: WordBool dispid 2502;
    property ProjectThreads: WordBool dispid 2503;
    property ProjectDimensions: WordBool dispid 2504;
    property ProjectRoughs: WordBool dispid 2505;
    property ProjectBases: WordBool dispid 2506;
    property ProjectTolerances: WordBool dispid 2507;
    property ProjectPositions: WordBool dispid 2508;
    property ProjectLeaders: WordBool dispid 2509;
    property ProjectMarkLeaders: WordBool dispid 2510;
    property ProjectBrandLeaders: WordBool dispid 2511;
    property ProjectHiddenComponents: WordBool dispid 2512;
    property ProjectStandartElements: WordBool dispid 2513;
    property ProjectCurves: WordBool dispid 2514;
    property ProjectPoints: WordBool dispid 2515;
    property ProjectAllObjects: WordBool dispid 2516;
    property ProjectAllDesignations: WordBool dispid 2517;
  end;

// *********************************************************************//
// Interface: IBreakViewParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1B94C65D-3473-4FF2-B185-0B1C2C98FCAE}
// *********************************************************************//
  IBreakViewParam = interface(IDispatch)
    ['{1B94C65D-3473-4FF2-B185-0B1C2C98FCAE}']
    function  AddBreakLine(X1: Double; Y1: Double; X2: Double; Y2: Double; Angle: Double): Integer; safecall;
    function  DeleteBreakLine(Index: Integer): WordBool; safecall;
    function  DeleteAllBreakLines: WordBool; safecall;
    function  SetBreakLinePosition(Index: Integer; X1: Double; Y1: Double; X2: Double; Y2: Double): WordBool; safecall;
    function  GetBreakLinePosition(Index: Integer; out X1: Double; out Y1: Double; out X2: Double; 
                                   out Y2: Double): WordBool; safecall;
    function  SetBreakLineParams(Index: Integer; Angle: Double; Clearance: Double; 
                                 BreakLineType: ksBreakLineTypeEnum; Amplitude: Double; 
                                 MaxAmplitude: Double): WordBool; safecall;
    function  GetBreakLineParams(Index: Integer; out Angle: Double; out Clearance: Double; 
                                 out BreakLineType: ksBreakLineTypeEnum; out Amplitude: Double; 
                                 out MaxAmplitude: Double): WordBool; safecall;
    function  Get_BreaksCount: Integer; safecall;
    function  Get_BreaksVisible: WordBool; safecall;
    procedure Set_BreaksVisible(Result: WordBool); safecall;
    property BreaksCount: Integer read Get_BreaksCount;
    property BreaksVisible: WordBool read Get_BreaksVisible write Set_BreaksVisible;
  end;

// *********************************************************************//
// DispIntf:  IBreakViewParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1B94C65D-3473-4FF2-B185-0B1C2C98FCAE}
// *********************************************************************//
  IBreakViewParamDisp = dispinterface
    ['{1B94C65D-3473-4FF2-B185-0B1C2C98FCAE}']
    function  AddBreakLine(X1: Double; Y1: Double; X2: Double; Y2: Double; Angle: Double): Integer; dispid 4500;
    function  DeleteBreakLine(Index: Integer): WordBool; dispid 4501;
    function  DeleteAllBreakLines: WordBool; dispid 4502;
    function  SetBreakLinePosition(Index: Integer; X1: Double; Y1: Double; X2: Double; Y2: Double): WordBool; dispid 4503;
    function  GetBreakLinePosition(Index: Integer; out X1: Double; out Y1: Double; out X2: Double; 
                                   out Y2: Double): WordBool; dispid 4504;
    function  SetBreakLineParams(Index: Integer; Angle: Double; Clearance: Double; 
                                 BreakLineType: ksBreakLineTypeEnum; Amplitude: Double; 
                                 MaxAmplitude: Double): WordBool; dispid 4505;
    function  GetBreakLineParams(Index: Integer; out Angle: Double; out Clearance: Double; 
                                 out BreakLineType: ksBreakLineTypeEnum; out Amplitude: Double; 
                                 out MaxAmplitude: Double): WordBool; dispid 4506;
    property BreaksCount: Integer readonly dispid 4507;
    property BreaksVisible: WordBool dispid 4508;
  end;

// *********************************************************************//
// Interface: ICutViewParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D4C8B5AF-B2A1-4E07-9CD0-A1FC5B0BC1E1}
// *********************************************************************//
  ICutViewParam = interface(IDispatch)
    ['{D4C8B5AF-B2A1-4E07-9CD0-A1FC5B0BC1E1}']
    function  AddCut(const Name: WideString; Number: Integer; X: Double; Y: Double; 
                     ModelCut: WordBool; const Contour: IDrawingObject; const View: IView): Integer; safecall;
    function  DeleteCut(Index: Integer): WordBool; safecall;
    function  DeleteAllCuts: WordBool; safecall;
    function  SetCutPlanePosition(Index: Integer; X: Double; Y: Double): WordBool; safecall;
    function  GetCutPlanePosition(Index: Integer; out X: Double; out Y: Double): WordBool; safecall;
    function  SetCutParams(Index: Integer; const Name: WideString; Number: Integer; 
                           ModelCut: WordBool): WordBool; safecall;
    function  GetCutParams(Index: Integer; out Name: WideString; out Number: Integer; 
                           out ModelCut: WordBool): IDrawingObject; safecall;
    function  Get_CutsCount: Integer; safecall;
    function  Get_LocalCut(Index: Integer): WordBool; safecall;
    procedure Set_LocalCut(Index: Integer; Result: WordBool); safecall;
    function  Get_HatchParam(Index: Integer): IHatchParam; safecall;
    property CutsCount: Integer read Get_CutsCount;
    property LocalCut[Index: Integer]: WordBool read Get_LocalCut write Set_LocalCut;
    property HatchParam[Index: Integer]: IHatchParam read Get_HatchParam;
  end;

// *********************************************************************//
// DispIntf:  ICutViewParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D4C8B5AF-B2A1-4E07-9CD0-A1FC5B0BC1E1}
// *********************************************************************//
  ICutViewParamDisp = dispinterface
    ['{D4C8B5AF-B2A1-4E07-9CD0-A1FC5B0BC1E1}']
    function  AddCut(const Name: WideString; Number: Integer; X: Double; Y: Double; 
                     ModelCut: WordBool; const Contour: IDrawingObject; const View: IView): Integer; dispid 3500;
    function  DeleteCut(Index: Integer): WordBool; dispid 3501;
    function  DeleteAllCuts: WordBool; dispid 3502;
    function  SetCutPlanePosition(Index: Integer; X: Double; Y: Double): WordBool; dispid 3503;
    function  GetCutPlanePosition(Index: Integer; out X: Double; out Y: Double): WordBool; dispid 3504;
    function  SetCutParams(Index: Integer; const Name: WideString; Number: Integer; 
                           ModelCut: WordBool): WordBool; dispid 3505;
    function  GetCutParams(Index: Integer; out Name: WideString; out Number: Integer; 
                           out ModelCut: WordBool): IDrawingObject; dispid 3506;
    property CutsCount: Integer readonly dispid 3507;
    property LocalCut[Index: Integer]: WordBool dispid 3508;
    property HatchParam[Index: Integer]: IHatchParam readonly dispid 3509;
  end;

// *********************************************************************//
// Interface: IHatchParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {437D6587-7649-4A0C-80BB-7A6E89661839}
// *********************************************************************//
  IHatchParam = interface(IDispatch)
    ['{437D6587-7649-4A0C-80BB-7A6E89661839}']
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    function  Get_Color: Integer; safecall;
    procedure Set_Color(Result: Integer); safecall;
    function  Get_Step: Double; safecall;
    procedure Set_Step(Result: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(Result: Double); safecall;
    function  Get_HatchType: WordBool; safecall;
    procedure Set_HatchType(Result: WordBool); safecall;
    function  Get_Width: Double; safecall;
    procedure Set_Width(Result: Double); safecall;
    function  Get_IsSheetAngle: WordBool; safecall;
    procedure Set_IsSheetAngle(Result: WordBool); safecall;
    property Style: Integer read Get_Style write Set_Style;
    property Color: Integer read Get_Color write Set_Color;
    property Step: Double read Get_Step write Set_Step;
    property Angle: Double read Get_Angle write Set_Angle;
    property HatchType: WordBool read Get_HatchType write Set_HatchType;
    property Width: Double read Get_Width write Set_Width;
    property IsSheetAngle: WordBool read Get_IsSheetAngle write Set_IsSheetAngle;
  end;

// *********************************************************************//
// DispIntf:  IHatchParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {437D6587-7649-4A0C-80BB-7A6E89661839}
// *********************************************************************//
  IHatchParamDisp = dispinterface
    ['{437D6587-7649-4A0C-80BB-7A6E89661839}']
    property Style: Integer dispid 6500;
    property Color: Integer dispid 6501;
    property Step: Double dispid 6502;
    property Angle: Double dispid 6503;
    property HatchType: WordBool dispid 6504;
    property Width: Double dispid 6505;
    property IsSheetAngle: WordBool dispid 6506;
  end;

// *********************************************************************//
// Interface: IDocument2DSettings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B09A64BF-7AA6-4BF6-B8E8-AA8E8EE6E9D6}
// *********************************************************************//
  IDocument2DSettings = interface(IDocumentSettings)
    ['{B09A64BF-7AA6-4BF6-B8E8-AA8E8EE6E9D6}']
    procedure Set_LayersGroupWay(PVal: LayersGroupWayEnum); safecall;
    function  Get_LayersGroupWay: LayersGroupWayEnum; safecall;
    procedure Set_CompositionInherit(PVal: WordBool); safecall;
    function  Get_CompositionInherit: WordBool; safecall;
    property LayersGroupWay: LayersGroupWayEnum read Get_LayersGroupWay write Set_LayersGroupWay;
    property CompositionInherit: WordBool read Get_CompositionInherit write Set_CompositionInherit;
  end;

// *********************************************************************//
// DispIntf:  IDocument2DSettingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B09A64BF-7AA6-4BF6-B8E8-AA8E8EE6E9D6}
// *********************************************************************//
  IDocument2DSettingsDisp = dispinterface
    ['{B09A64BF-7AA6-4BF6-B8E8-AA8E8EE6E9D6}']
    property LayersGroupWay: LayersGroupWayEnum dispid 101;
    property CompositionInherit: WordBool dispid 102;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingDocumentSettings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0DC39FC2-4FB1-489E-A76E-E47413199FA3}
// *********************************************************************//
  IDrawingDocumentSettings = interface(IDispatch)
    ['{0DC39FC2-4FB1-489E-A76E-E47413199FA3}']
    procedure Set_SheetAutoNumber(PVal: WordBool); safecall;
    function  Get_SheetAutoNumber: WordBool; safecall;
    procedure Set_SheetFirstNumber(PVal: Integer); safecall;
    function  Get_SheetFirstNumber: Integer; safecall;
    procedure Set_SheetAutoCount(PVal: WordBool); safecall;
    function  Get_SheetAutoCount: WordBool; safecall;
    procedure Set_SheetsCount(PVal: Integer); safecall;
    function  Get_SheetsCount: Integer; safecall;
    property SheetAutoNumber: WordBool read Get_SheetAutoNumber write Set_SheetAutoNumber;
    property SheetFirstNumber: Integer read Get_SheetFirstNumber write Set_SheetFirstNumber;
    property SheetAutoCount: WordBool read Get_SheetAutoCount write Set_SheetAutoCount;
    property SheetsCount: Integer read Get_SheetsCount write Set_SheetsCount;
  end;

// *********************************************************************//
// DispIntf:  IDrawingDocumentSettingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0DC39FC2-4FB1-489E-A76E-E47413199FA3}
// *********************************************************************//
  IDrawingDocumentSettingsDisp = dispinterface
    ['{0DC39FC2-4FB1-489E-A76E-E47413199FA3}']
    property SheetAutoNumber: WordBool dispid 1;
    property SheetFirstNumber: Integer dispid 2;
    property SheetAutoCount: WordBool dispid 3;
    property SheetsCount: Integer dispid 4;
  end;

// *********************************************************************//
// Interface: IFragmentDocumentSettings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A33D05CF-EFFF-4BBE-9BE0-15D283425828}
// *********************************************************************//
  IFragmentDocumentSettings = interface(IDispatch)
    ['{A33D05CF-EFFF-4BBE-9BE0-15D283425828}']
  end;

// *********************************************************************//
// DispIntf:  IFragmentDocumentSettingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A33D05CF-EFFF-4BBE-9BE0-15D283425828}
// *********************************************************************//
  IFragmentDocumentSettingsDisp = dispinterface
    ['{A33D05CF-EFFF-4BBE-9BE0-15D283425828}']
  end;

// *********************************************************************//
// Interface: ILibItemSettings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C474582A-2AD4-4ED5-A86A-A169C4DA5D54}
// *********************************************************************//
  ILibItemSettings = interface(IDispatch)
    ['{C474582A-2AD4-4ED5-A86A-A169C4DA5D54}']
    function  Get_ItemCount: Integer; safecall;
    function  GetItem(Index: OleVariant; out Use: WordBool): Double; safecall;
    function  SetItem(Index: OleVariant; Use: WordBool): WordBool; safecall;
    function  GetItems(out UniqIds: OleVariant; out Uses_: OleVariant): WordBool; safecall;
    property ItemCount: Integer read Get_ItemCount;
  end;

// *********************************************************************//
// DispIntf:  ILibItemSettingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C474582A-2AD4-4ED5-A86A-A169C4DA5D54}
// *********************************************************************//
  ILibItemSettingsDisp = dispinterface
    ['{C474582A-2AD4-4ED5-A86A-A169C4DA5D54}']
    property ItemCount: Integer readonly dispid 500;
    function  GetItem(Index: OleVariant; out Use: WordBool): Double; dispid 501;
    function  SetItem(Index: OleVariant; Use: WordBool): WordBool; dispid 503;
    function  GetItems(out UniqIds: OleVariant; out Uses_: OleVariant): WordBool; dispid 505;
  end;

// *********************************************************************//
// Interface: IInsertionParameters
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1DB65C7E-535E-489E-8F34-84DF7FBA09B2}
// *********************************************************************//
  IInsertionParameters = interface(IKompasAPIObject)
    ['{1DB65C7E-535E-489E-8F34-84DF7FBA09B2}']
    function  Get_FileName: WideString; safecall;
    function  Get_SourceHeight: Double; safecall;
    function  Get_SourceWidth: Double; safecall;
    function  Get_Height: Double; safecall;
    procedure Set_Height(PVal: Double); safecall;
    function  Get_Width: Double; safecall;
    procedure Set_Width(PVal: Double); safecall;
    function  Get_Scale: Double; safecall;
    procedure Set_Scale(PVal: Double); safecall;
    function  AutoScale(ByHeight: WordBool): WordBool; safecall;
    function  Get_Angle: ksAngleEnum; safecall;
    procedure Set_Angle(PVal: ksAngleEnum); safecall;
    function  Get_InsertionDefinition: IInsertionDefinition; safecall;
    procedure Set_InsertionDefinition(const PVal: IInsertionDefinition); safecall;
    function  Get_ImageResolution: Double; safecall;
    procedure Set_ImageResolution(PVal: Double); safecall;
    function  Get_Palette: Integer; safecall;
    property FileName: WideString read Get_FileName;
    property SourceHeight: Double read Get_SourceHeight;
    property SourceWidth: Double read Get_SourceWidth;
    property Height: Double read Get_Height write Set_Height;
    property Width: Double read Get_Width write Set_Width;
    property Scale: Double read Get_Scale write Set_Scale;
    property Angle: ksAngleEnum read Get_Angle write Set_Angle;
    property InsertionDefinition: IInsertionDefinition read Get_InsertionDefinition write Set_InsertionDefinition;
    property ImageResolution: Double read Get_ImageResolution write Set_ImageResolution;
    property Palette: Integer read Get_Palette;
  end;

// *********************************************************************//
// DispIntf:  IInsertionParametersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1DB65C7E-535E-489E-8F34-84DF7FBA09B2}
// *********************************************************************//
  IInsertionParametersDisp = dispinterface
    ['{1DB65C7E-535E-489E-8F34-84DF7FBA09B2}']
    property FileName: WideString readonly dispid 1;
    property SourceHeight: Double readonly dispid 2;
    property SourceWidth: Double readonly dispid 3;
    property Height: Double dispid 4;
    property Width: Double dispid 5;
    property Scale: Double dispid 6;
    function  AutoScale(ByHeight: WordBool): WordBool; dispid 7;
    property Angle: ksAngleEnum dispid 8;
    property InsertionDefinition: IInsertionDefinition dispid 9;
    property ImageResolution: Double dispid 10;
    property Palette: Integer readonly dispid 11;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertionDefinition
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {66907239-09BA-4456-AC9A-318804099628}
// *********************************************************************//
  IInsertionDefinition = interface(IKompasAPIObject)
    ['{66907239-09BA-4456-AC9A-318804099628}']
    function  Get_InsertionType: ksInsertionTypeEnum; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    procedure Set_FileName(const PVal: WideString); safecall;
    function  Get_FileName: WideString; safecall;
    function  Open(Visible: WordBool; ReadOnly: WordBool): IKompasDocument2D; safecall;
    function  Get_InsertionObjectsCount: Integer; safecall;
    property InsertionType: ksInsertionTypeEnum read Get_InsertionType;
    property Name: WideString read Get_Name write Set_Name;
    property FileName: WideString read Get_FileName write Set_FileName;
    property InsertionObjectsCount: Integer read Get_InsertionObjectsCount;
  end;

// *********************************************************************//
// DispIntf:  IInsertionDefinitionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {66907239-09BA-4456-AC9A-318804099628}
// *********************************************************************//
  IInsertionDefinitionDisp = dispinterface
    ['{66907239-09BA-4456-AC9A-318804099628}']
    property InsertionType: ksInsertionTypeEnum readonly dispid 1;
    property Name: WideString dispid 2;
    property FileName: WideString dispid 3;
    function  Open(Visible: WordBool; ReadOnly: WordBool): IKompasDocument2D; dispid 4;
    property InsertionObjectsCount: Integer readonly dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITableCell
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CF9150BA-0E3A-46DE-8973-332A00361474}
// *********************************************************************//
  ITableCell = interface(IKompasAPIObject)
    ['{CF9150BA-0E3A-46DE-8973-332A00361474}']
    function  Get_Text: IKompasAPIObject; safecall;
    function  Get_CellID: Integer; safecall;
    function  Get_Row: Integer; safecall;
    function  Get_Column: Integer; safecall;
    property Text: IKompasAPIObject read Get_Text;
    property CellID: Integer read Get_CellID;
    property Row: Integer read Get_Row;
    property Column: Integer read Get_Column;
  end;

// *********************************************************************//
// DispIntf:  ITableCellDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CF9150BA-0E3A-46DE-8973-332A00361474}
// *********************************************************************//
  ITableCellDisp = dispinterface
    ['{CF9150BA-0E3A-46DE-8973-332A00361474}']
    property Text: IKompasAPIObject readonly dispid 1;
    property CellID: Integer readonly dispid 2;
    property Row: Integer readonly dispid 3;
    property Column: Integer readonly dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITable
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D3715420-645E-435B-BB25-8E35AC570718}
// *********************************************************************//
  ITable = interface(IDispatch)
    ['{D3715420-645E-435B-BB25-8E35AC570718}']
    function  Get_RowsCount: Integer; safecall;
    function  Get_ColumnsCount: Integer; safecall;
    function  Get_Cell(RowN: Integer; ColN: Integer): ITableCell; safecall;
    function  Get_CellById(CellID: Integer): ITableCell; safecall;
    function  AddColumn(ColN: Integer; Right: WordBool): WordBool; safecall;
    function  DeleteColumn(ColN: Integer): WordBool; safecall;
    function  AddRow(RowN: Integer; Down: WordBool): WordBool; safecall;
    function  DeleteRow(RowN: Integer): WordBool; safecall;
    function  Clear: WordBool; safecall;
    function  Get_Range(BeginRow: Integer; BeginColumn: Integer; EndRow: Integer; EndColumn: Integer): ITableRange; safecall;
    property RowsCount: Integer read Get_RowsCount;
    property ColumnsCount: Integer read Get_ColumnsCount;
    property Cell[RowN: Integer; ColN: Integer]: ITableCell read Get_Cell;
    property CellById[CellID: Integer]: ITableCell read Get_CellById;
    property Range[BeginRow: Integer; BeginColumn: Integer; EndRow: Integer; EndColumn: Integer]: ITableRange read Get_Range;
  end;

// *********************************************************************//
// DispIntf:  ITableDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D3715420-645E-435B-BB25-8E35AC570718}
// *********************************************************************//
  ITableDisp = dispinterface
    ['{D3715420-645E-435B-BB25-8E35AC570718}']
    property RowsCount: Integer readonly dispid 2501;
    property ColumnsCount: Integer readonly dispid 2502;
    property Cell[RowN: Integer; ColN: Integer]: ITableCell readonly dispid 2503;
    property CellById[CellID: Integer]: ITableCell readonly dispid 2504;
    function  AddColumn(ColN: Integer; Right: WordBool): WordBool; dispid 2505;
    function  DeleteColumn(ColN: Integer): WordBool; dispid 2506;
    function  AddRow(RowN: Integer; Down: WordBool): WordBool; dispid 2507;
    function  DeleteRow(RowN: Integer): WordBool; dispid 2508;
    function  Clear: WordBool; dispid 2509;
    property Range[BeginRow: Integer; BeginColumn: Integer; EndRow: Integer; EndColumn: Integer]: ITableRange readonly dispid 2510;
  end;

// *********************************************************************//
// Interface: ITableRange
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D78E47DC-172B-4824-A519-9BC2C0387B5C}
// *********************************************************************//
  ITableRange = interface(IDispatch)
    ['{D78E47DC-172B-4824-A519-9BC2C0387B5C}']
    function  CombineCells: WordBool; safecall;
    function  DivideCells(ColumnCount: Integer; RowCount: Integer; PrepareCombine: WordBool): WordBool; safecall;
    function  ClearCells: WordBool; safecall;
    function  Get_Cells: OleVariant; safecall;
    function  Get_CellsFormat: ICellFormat; safecall;
    function  Get_CellsBoundaries: ICellBoundaries; safecall;
    function  Get_Texts: OleVariant; safecall;
    procedure Set_Texts(PVal: OleVariant); safecall;
    property Cells: OleVariant read Get_Cells;
    property CellsFormat: ICellFormat read Get_CellsFormat;
    property CellsBoundaries: ICellBoundaries read Get_CellsBoundaries;
    property Texts: OleVariant read Get_Texts write Set_Texts;
  end;

// *********************************************************************//
// DispIntf:  ITableRangeDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D78E47DC-172B-4824-A519-9BC2C0387B5C}
// *********************************************************************//
  ITableRangeDisp = dispinterface
    ['{D78E47DC-172B-4824-A519-9BC2C0387B5C}']
    function  CombineCells: WordBool; dispid 3501;
    function  DivideCells(ColumnCount: Integer; RowCount: Integer; PrepareCombine: WordBool): WordBool; dispid 3502;
    function  ClearCells: WordBool; dispid 3503;
    property Cells: OleVariant readonly dispid 3504;
    property CellsFormat: ICellFormat readonly dispid 3505;
    property CellsBoundaries: ICellBoundaries readonly dispid 3506;
    property Texts: OleVariant dispid 3507;
  end;

// *********************************************************************//
// Interface: ICellFormat
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9F2F27E7-8FB2-4C6C-A54D-35DB240060D8}
// *********************************************************************//
  ICellFormat = interface(IDispatch)
    ['{9F2F27E7-8FB2-4C6C-A54D-35DB240060D8}']
    function  Get_TextStyle: Integer; safecall;
    procedure Set_TextStyle(Result: Integer); safecall;
    function  Get_ReadOnly: WordBool; safecall;
    procedure Set_ReadOnly(Result: WordBool); safecall;
    function  Get_OneLine: WordBool; safecall;
    procedure Set_OneLine(Result: WordBool); safecall;
    function  Get_LeftEdge: Double; safecall;
    procedure Set_LeftEdge(Result: Double); safecall;
    function  Get_RightEdge: Double; safecall;
    procedure Set_RightEdge(Result: Double); safecall;
    function  Get_SpaceBefore: Double; safecall;
    procedure Set_SpaceBefore(Result: Double); safecall;
    function  Get_SpaceAfter: Double; safecall;
    procedure Set_SpaceAfter(Result: Double); safecall;
    function  Get_Width: Double; safecall;
    procedure Set_Width(Result: Double); safecall;
    function  Get_Height: Double; safecall;
    procedure Set_Height(Result: Double); safecall;
    function  Get_HFormat: ksTextHorizontalFormatEnum; safecall;
    procedure Set_HFormat(Result: ksTextHorizontalFormatEnum); safecall;
    function  Get_VFormat: WordBool; safecall;
    procedure Set_VFormat(Result: WordBool); safecall;
    property TextStyle: Integer read Get_TextStyle write Set_TextStyle;
    property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
    property OneLine: WordBool read Get_OneLine write Set_OneLine;
    property LeftEdge: Double read Get_LeftEdge write Set_LeftEdge;
    property RightEdge: Double read Get_RightEdge write Set_RightEdge;
    property SpaceBefore: Double read Get_SpaceBefore write Set_SpaceBefore;
    property SpaceAfter: Double read Get_SpaceAfter write Set_SpaceAfter;
    property Width: Double read Get_Width write Set_Width;
    property Height: Double read Get_Height write Set_Height;
    property HFormat: ksTextHorizontalFormatEnum read Get_HFormat write Set_HFormat;
    property VFormat: WordBool read Get_VFormat write Set_VFormat;
  end;

// *********************************************************************//
// DispIntf:  ICellFormatDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9F2F27E7-8FB2-4C6C-A54D-35DB240060D8}
// *********************************************************************//
  ICellFormatDisp = dispinterface
    ['{9F2F27E7-8FB2-4C6C-A54D-35DB240060D8}']
    property TextStyle: Integer dispid 4501;
    property ReadOnly: WordBool dispid 4502;
    property OneLine: WordBool dispid 4503;
    property LeftEdge: Double dispid 4504;
    property RightEdge: Double dispid 4505;
    property SpaceBefore: Double dispid 4506;
    property SpaceAfter: Double dispid 4507;
    property Width: Double dispid 4508;
    property Height: Double dispid 4509;
    property HFormat: ksTextHorizontalFormatEnum dispid 4510;
    property VFormat: WordBool dispid 4511;
  end;

// *********************************************************************//
// Interface: ICellBoundaries
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1E29E849-1D1E-4791-BD31-8EF00ED5D118}
// *********************************************************************//
  ICellBoundaries = interface(IDispatch)
    ['{1E29E849-1D1E-4791-BD31-8EF00ED5D118}']
    function  Get_LineStyle(Index: ksCellBoundariesEnum): ksCurveStyleEnum; safecall;
    procedure Set_LineStyle(Index: ksCellBoundariesEnum; Result: ksCurveStyleEnum); safecall;
    function  Get_LineVisible(Index: ksCellBoundariesEnum): WordBool; safecall;
    procedure Set_LineVisible(Index: ksCellBoundariesEnum; Result: WordBool); safecall;
    property LineStyle[Index: ksCellBoundariesEnum]: ksCurveStyleEnum read Get_LineStyle write Set_LineStyle;
    property LineVisible[Index: ksCellBoundariesEnum]: WordBool read Get_LineVisible write Set_LineVisible;
  end;

// *********************************************************************//
// DispIntf:  ICellBoundariesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1E29E849-1D1E-4791-BD31-8EF00ED5D118}
// *********************************************************************//
  ICellBoundariesDisp = dispinterface
    ['{1E29E849-1D1E-4791-BD31-8EF00ED5D118}']
    property LineStyle[Index: ksCellBoundariesEnum]: ksCurveStyleEnum dispid 5501;
    property LineVisible[Index: ksCellBoundariesEnum]: WordBool dispid 5502;
  end;

// *********************************************************************//
// DispIntf:  ksPropertyManagerNotify
// Flags:     (4096) Dispatchable
// GUID:      {5A89C538-E0DD-4C21-B3D1-3BF65EEB8C3E}
// *********************************************************************//
  ksPropertyManagerNotify = dispinterface
    ['{5A89C538-E0DD-4C21-B3D1-3BF65EEB8C3E}']
    function  ButtonClick(ButtonID: Integer): WordBool; dispid 1;
    function  ChangeControlValue(const Control: IPropertyControl): WordBool; dispid 2;
    function  ControlCommand(const Control: IPropertyControl; ButtonID: Integer): WordBool; dispid 3;
    function  ButtonUpdate(ButtonID: Integer; var Check: Integer; var Enable: WordBool): WordBool; dispid 4;
    function  ProcessActivate: WordBool; dispid 5;
    function  ProcessDeactivate: WordBool; dispid 6;
    function  CommandHelp(Id: Integer): WordBool; dispid 7;
    function  SelectItem(const Control: IPropertyControl; Index: Integer; Select: WordBool): WordBool; dispid 8;
    function  CheckItem(const Control: IPropertyControl; Index: Integer; Check: WordBool): WordBool; dispid 9;
    function  ChangeActiveTab(TabIndex: Integer): WordBool; dispid 10;
    function  EditFocus(const Control: IPropertyControl; Set_: WordBool): WordBool; dispid 11;
    function  UserMenuCommand(const Control: IPropertyControl; MenuID: Integer): WordBool; dispid 12;
  end;

// *********************************************************************//
// DispIntf:  ksPropertyUserControlNotify
// Flags:     (4096) Dispatchable
// GUID:      {5A31BB02-026C-4419-A0FF-A93CF58DCA99}
// *********************************************************************//
  ksPropertyUserControlNotify = dispinterface
    ['{5A31BB02-026C-4419-A0FF-A93CF58DCA99}']
    function  CreateOCX(const IOcx: IDispatch): WordBool; dispid 1;
    function  DestroyOCX: WordBool; dispid 2;
  end;

// *********************************************************************//
// DispIntf:  ksDocumentFrameNotify
// Flags:     (4096) Dispatchable
// GUID:      {6ECBB531-5609-4364-AC92-7A6A21D23313}
// *********************************************************************//
  ksDocumentFrameNotify = dispinterface
    ['{6ECBB531-5609-4364-AC92-7A6A21D23313}']
    function  BeginPaint(const PaintObj: IPaintObject): WordBool; dispid 1;
    function  ClosePaint(const PaintObj: IPaintObject): WordBool; dispid 2;
    function  MouseDown(NButton: Smallint; NShiftState: Smallint; X: Integer; Y: Integer): WordBool; dispid 3;
    function  MouseUp(NButton: Smallint; NShiftState: Smallint; X: Integer; Y: Integer): WordBool; dispid 4;
    function  MouseDblClick(NButton: Smallint; NShiftState: Smallint; X: Integer; Y: Integer): WordBool; dispid 5;
    function  BeginPaintGL(const GlObj: ksGLObject; DrawMode: Integer): WordBool; dispid 6;
    function  ClosePaintGL(const GlObj: ksGLObject; DrawMode: Integer): WordBool; dispid 7;
    function  AddGabarit(const GabObj: IGabaritObject): WordBool; dispid 8;
    function  Activate: WordBool; dispid 9;
    function  Deactivate: WordBool; dispid 10;
    function  CloseFrame: WordBool; dispid 11;
    function  MouseMove(NShiftState: Smallint; X: Integer; Y: Integer): WordBool; dispid 12;
    function  ShowOcxTree(const Ocx: IDispatch; show: WordBool): WordBool; dispid 13;
  end;

// *********************************************************************//
// Interface: IPaintObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4D14726D-0EC2-49CE-B02C-FEDAA6D65BBD}
// *********************************************************************//
  IPaintObject = interface(IDispatch)
    ['{4D14726D-0EC2-49CE-B02C-FEDAA6D65BBD}']
    function  GetHWND: OLE_HANDLE; safecall;
    procedure GetTransformMatrix(out A11: Double; out A12: Double; out A13: Double; 
                                 out A14: Double; out A21: Double; out A22: Double; 
                                 out A23: Double; out A24: Double); safecall;
    function  GetDIBForOutput: WideString; safecall;
  end;

// *********************************************************************//
// DispIntf:  IPaintObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4D14726D-0EC2-49CE-B02C-FEDAA6D65BBD}
// *********************************************************************//
  IPaintObjectDisp = dispinterface
    ['{4D14726D-0EC2-49CE-B02C-FEDAA6D65BBD}']
    function  GetHWND: OLE_HANDLE; dispid 1;
    procedure GetTransformMatrix(out A11: Double; out A12: Double; out A13: Double; 
                                 out A14: Double; out A21: Double; out A22: Double; 
                                 out A23: Double; out A24: Double); dispid 2;
    function  GetDIBForOutput: WideString; dispid 3;
  end;

// *********************************************************************//
// DispIntf:  ksGLObject
// Flags:     (4096) Dispatchable
// GUID:      {B1C65023-B908-4CAD-9238-C5026520E62C}
// *********************************************************************//
  ksGLObject = dispinterface
    ['{B1C65023-B908-4CAD-9238-C5026520E62C}']
    function  glBegin(Mode: Integer): WordBool; dispid 1;
    function  glEnd: WordBool; dispid 2;
    function  glEnable(Cap: Integer): WordBool; dispid 3;
    function  glDisable(Cap: Integer): WordBool; dispid 4;
    function  glColor3d(R: Double; G: Double; B: Double): WordBool; dispid 20;
    function  glLineWidth(W: Double): WordBool; dispid 21;
    function  glLineStipple(Factor: Integer; Pattern: Smallint): WordBool; dispid 22;
    function  glPointSize(W: Double): WordBool; dispid 23;
    function  glPolygonMode(Face: Integer; Mode: Integer): WordBool; dispid 24;
    function  glVertex2d(X: Double; Y: Double): WordBool; dispid 40;
    function  glVertex2dv(var PData: Double; CountDouble: Integer): WordBool; dispid 41;
    function  glVertex3d(X: Double; Y: Double; Z: Double): WordBool; dispid 42;
    function  glVertex3dv(var PData: Double; CountDouble: Integer): WordBool; dispid 43;
    function  glVertex4d(X: Double; Y: Double; Z: Double; W: Double): WordBool; dispid 44;
    function  glVertex4dv(var PData: Double; CountDouble: Integer): WordBool; dispid 45;
  end;

// *********************************************************************//
// Interface: IGabaritObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B6674824-CD9D-4220-B2CB-9F939A9C35C8}
// *********************************************************************//
  IGabaritObject = interface(IDispatch)
    ['{B6674824-CD9D-4220-B2CB-9F939A9C35C8}']
    function  GetCurrentGabarit(NPage: Integer; out P1X: Double; out P1Y: Double; out P1Z: Double; 
                                out P2X: Double; out P2Y: Double; out P2Z: Double): WordBool; safecall;
    function  AddGabarit(X1: Double; Y1: Double; Z1: Double; X2: Double; Y2: Double; Z2: Double): WordBool; safecall;
    function  GetGabaritModifying: WordBool; safecall;
  end;

// *********************************************************************//
// DispIntf:  IGabaritObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B6674824-CD9D-4220-B2CB-9F939A9C35C8}
// *********************************************************************//
  IGabaritObjectDisp = dispinterface
    ['{B6674824-CD9D-4220-B2CB-9F939A9C35C8}']
    function  GetCurrentGabarit(NPage: Integer; out P1X: Double; out P1Y: Double; out P1Z: Double; 
                                out P2X: Double; out P2Y: Double; out P2Z: Double): WordBool; dispid 1;
    function  AddGabarit(X1: Double; Y1: Double; Z1: Double; X2: Double; Y2: Double; Z2: Double): WordBool; dispid 2;
    function  GetGabaritModifying: WordBool; dispid 3;
  end;

// *********************************************************************//
// DispIntf:  ksDrawingObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {E335A73F-DF27-4D33-8CBD-E928F797FB94}
// *********************************************************************//
  ksDrawingObjectNotify = dispinterface
    ['{E335A73F-DF27-4D33-8CBD-E928F797FB94}']
    function  ChangeActive(Obj: OleVariant): WordBool; dispid 1;
    function  BeginDelete(Objects: OleVariant): WordBool; dispid 2;
    function  Delete(Objects: OleVariant): WordBool; dispid 3;
    function  BeginMove(Objects: OleVariant): WordBool; dispid 4;
    function  Move(Objects: OleVariant): WordBool; dispid 5;
    function  BeginRotate(Objects: OleVariant): WordBool; dispid 6;
    function  Rotate(Objects: OleVariant): WordBool; dispid 7;
    function  BeginScale(Objects: OleVariant): WordBool; dispid 8;
    function  Scale(Objects: OleVariant): WordBool; dispid 9;
    function  BeginTransform(Objects: OleVariant): WordBool; dispid 10;
    function  Transform(Objects: OleVariant): WordBool; dispid 11;
    function  BeginCopy(Objects: OleVariant): WordBool; dispid 12;
    function  Copy(Objects: OleVariant): WordBool; dispid 13;
    function  BeginSymmetry(Objects: OleVariant): WordBool; dispid 14;
    function  Symmetry(Objects: OleVariant): WordBool; dispid 15;
    function  BeginProcess(PType: Integer; ObjRef: OleVariant): WordBool; dispid 16;
    function  EndProcess(PType: Integer): WordBool; dispid 17;
    function  CreateObject(Objects: OleVariant): WordBool; dispid 18;
    function  UpdateObject(Objects: OleVariant): WordBool; dispid 19;
    function  BeginDestroyObject(Objects: OleVariant): WordBool; dispid 20;
    function  DestroyObject(Objects: OleVariant): WordBool; dispid 21;
  end;

// *********************************************************************//
// DispIntf:  ksViewsAndLayersManagerNotify
// Flags:     (4096) Dispatchable
// GUID:      {FC04C62E-AB0F-4614-B3D9-0EA8671CEB08}
// *********************************************************************//
  ksViewsAndLayersManagerNotify = dispinterface
    ['{FC04C62E-AB0F-4614-B3D9-0EA8671CEB08}']
    function  BeginEdit: WordBool; dispid 1;
    function  EndEdit(IsOk: WordBool): WordBool; dispid 2;
  end;

// *********************************************************************//
// DispIntf:  ksLibraryManagerNotify
// Flags:     (4096) Dispatchable
// GUID:      {9B9CC387-E217-4EED-BCE9-9E1D645B49EE}
// *********************************************************************//
  ksLibraryManagerNotify = dispinterface
    ['{9B9CC387-E217-4EED-BCE9-9E1D645B49EE}']
    function  BeginAttach(const PLibrary: ILibrary): WordBool; dispid 1;
    function  Attach(const PLibrary: ILibrary): WordBool; dispid 2;
    function  BeginDetach(const PLibrary: ILibrary): WordBool; dispid 3;
    function  Detach(const PLibrary: ILibrary): WordBool; dispid 4;
    function  BeginExecute(const PLibrary: ILibrary): WordBool; dispid 5;
    function  EndExecute(const PLibrary: ILibrary): WordBool; dispid 6;
    function  SystemControlStop(const PLibrary: ILibrary): WordBool; dispid 7;
    function  SystemControlStart(const PLibrary: ILibrary): WordBool; dispid 8;
    function  AddLibraryDescription(const PLibrary: ILibrary): WordBool; dispid 9;
    function  DeleteLibraryDescription(const PLibrary: ILibrary): WordBool; dispid 10;
    function  AddInsert(const PInsert: IInsert; Create: WordBool): WordBool; dispid 11;
    function  DeleteInsert(const PInsert: IInsert): WordBool; dispid 12;
    function  EditInsert(const PLibrary: ILibrary; const PDoc: IKompasDocument; NewFrw: WordBool): WordBool; dispid 13;
  end;

// *********************************************************************//
// DispIntf:  ksSpecificationDescriptionNotify
// Flags:     (4096) Dispatchable
// GUID:      {A0DA14E6-4F92-4D18-8CD1-2BBAB695CE13}
// *********************************************************************//
  ksSpecificationDescriptionNotify = dispinterface
    ['{A0DA14E6-4F92-4D18-8CD1-2BBAB695CE13}']
    function  TuningSpcStyleBeginChange(const Descr: ISpecificationDescription): WordBool; dispid 1;
    function  TuningSpcStyleChange(const Descr: ISpecificationDescription; IsOk: WordBool): WordBool; dispid 2;
    function  ChangeCurrentSpcDescription(const Descr: ISpecificationDescription): WordBool; dispid 3;
    function  SpcDescriptionAdd(const Descr: ISpecificationDescription): WordBool; dispid 4;
    function  SpcDescriptionRemove(const Descr: ISpecificationDescription): WordBool; dispid 5;
    function  SpcDescriptionBeginEdit(const Descr: ISpecificationDescription): WordBool; dispid 6;
    function  SpcDescriptionEdit(const Descr: ISpecificationDescription; IsOk: WordBool): WordBool; dispid 7;
    function  SynchronizationBegin: WordBool; dispid 8;
    function  Synchronization: WordBool; dispid 9;
    function  BeginCalcPositions: WordBool; dispid 10;
    function  CalcPositions: WordBool; dispid 11;
    function  BeginCreateObject(TypeObj: Integer): WordBool; dispid 12;
  end;

// *********************************************************************//
// DispIntf:  ksSpecificationObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {1C4DEC41-A8EA-40EE-9AC8-F807232DB874}
// *********************************************************************//
  ksSpecificationObjectNotify = dispinterface
    ['{1C4DEC41-A8EA-40EE-9AC8-F807232DB874}']
    function  BeginDelete(const Obj: ISpecificationObject): WordBool; dispid 1;
    function  Delete(const Obj: ISpecificationObject): WordBool; dispid 2;
    function  CellDblClick(const Obj: ISpecificationObject; Number: Integer): WordBool; dispid 3;
    function  CellBeginEdit(const Obj: ISpecificationObject; Number: Integer): WordBool; dispid 4;
    function  ChangeCurrent(const Obj: ISpecificationObject): WordBool; dispid 5;
    function  DocumentBeginAdd(const Obj: ISpecificationObject): WordBool; dispid 6;
    function  DocumentAdd(const Obj: ISpecificationObject; const DocName: WideString): WordBool; dispid 7;
    function  DocumentRemove(const Obj: ISpecificationObject; const DocName: WideString): WordBool; dispid 8;
    function  BeginGeomChange(const Obj: ISpecificationObject): WordBool; dispid 9;
    function  GeomChange(const Obj: ISpecificationObject): WordBool; dispid 10;
    function  BeginProcess(PType: Integer; const Obj: ISpecificationObject): WordBool; dispid 11;
    function  EndProcess(PType: Integer): WordBool; dispid 12;
    function  CreateObject(const Obj: ISpecificationObject): WordBool; dispid 13;
    function  UpdateObject(const Obj: ISpecificationObject): WordBool; dispid 14;
  end;

// *********************************************************************//
// DispIntf:  ksLayoutSheetsNotify
// Flags:     (4096) Dispatchable
// GUID:      {58E30500-6073-4337-BFC1-32A74EA17DE8}
// *********************************************************************//
  ksLayoutSheetsNotify = dispinterface
    ['{58E30500-6073-4337-BFC1-32A74EA17DE8}']
    function  Add(const PSheet: ILayoutSheet): WordBool; dispid 1;
    function  Delete(const PSheet: ILayoutSheet): WordBool; dispid 2;
    function  Update(const PSheet: ILayoutSheet): WordBool; dispid 3;
  end;

// *********************************************************************//
// DispIntf:  ksModelObjectNotify
// Flags:     (4096) Dispatchable
// GUID:      {7B8E86E1-4304-449D-9CEC-1B14F74A16FB}
// *********************************************************************//
  ksModelObjectNotify = dispinterface
    ['{7B8E86E1-4304-449D-9CEC-1B14F74A16FB}']
    function  BeginDelete(Obj: OleVariant): WordBool; dispid 1;
    function  Delete(Obj: OleVariant): WordBool; dispid 2;
    function  Excluded(Obj: OleVariant; Excluded: WordBool): WordBool; dispid 3;
    function  Hidden(Obj: OleVariant; _Hidden: WordBool): WordBool; dispid 4;
    function  BeginPropertyChanged(Obj: OleVariant): WordBool; dispid 5;
    function  PropertyChanged(Obj: OleVariant): WordBool; dispid 6;
    function  BeginPlacementChanged(Obj: OleVariant): WordBool; dispid 7;
    function  PlacementChanged(Obj: OleVariant): WordBool; dispid 8;
    function  BeginProcess(PType: Integer; Pbj: OleVariant): WordBool; dispid 9;
    function  EndProcess(PType: Integer): WordBool; dispid 10;
    function  CreateObject(Obj: OleVariant): WordBool; dispid 11;
    function  UpdateObject(Obj: OleVariant): WordBool; dispid 12;
  end;

// *********************************************************************//
// DispIntf:  ksDocument3DNotify7
// Flags:     (4096) Dispatchable
// GUID:      {C784D45B-8C68-4189-8F27-A3B0D6CFAEB2}
// *********************************************************************//
  ksDocument3DNotify7 = dispinterface
    ['{C784D45B-8C68-4189-8F27-A3B0D6CFAEB2}']
    function  BeginRebuild: WordBool; dispid 1;
    function  Rebuild: WordBool; dispid 2;
    function  BeginChoiceMaterial: WordBool; dispid 3;
    function  ChoiceMaterial(const Material: WideString; Density: Double): WordBool; dispid 4;
    function  BeginChoiceMarking: WordBool; dispid 5;
    function  ChoiceMarking(const Marking: WideString): WordBool; dispid 6;
    function  BeginSetPartFromFile: WordBool; dispid 7;
    function  BeginCreatePartFromFile(TypeDoc: WordBool; const Plane: IModelObject): WordBool; dispid 8;
  end;

// *********************************************************************//
// Interface: IModelObjectNotifyResult
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {73653933-51B5-49D6-9EF2-6667639283CC}
// *********************************************************************//
  IModelObjectNotifyResult = interface(IDispatch)
    ['{73653933-51B5-49D6-9EF2-6667639283CC}']
    function  Get_NotifyType: ksObject3DNotifyEnum; safecall;
    function  Get_NotifyObjects: OleVariant; safecall;
    function  Get_ProcessType: ProcessTypeEnum; safecall;
    property NotifyType: ksObject3DNotifyEnum read Get_NotifyType;
    property NotifyObjects: OleVariant read Get_NotifyObjects;
    property ProcessType: ProcessTypeEnum read Get_ProcessType;
  end;

// *********************************************************************//
// DispIntf:  IModelObjectNotifyResultDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {73653933-51B5-49D6-9EF2-6667639283CC}
// *********************************************************************//
  IModelObjectNotifyResultDisp = dispinterface
    ['{73653933-51B5-49D6-9EF2-6667639283CC}']
    property NotifyType: ksObject3DNotifyEnum readonly dispid 4001;
    property NotifyObjects: OleVariant readonly dispid 4002;
    property ProcessType: ProcessTypeEnum readonly dispid 4003;
  end;

// *********************************************************************//
// Interface: IKompasDocument3DNotifyResult
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {354EA69A-3191-4DA4-B980-821BE9B7683C}
// *********************************************************************//
  IKompasDocument3DNotifyResult = interface(IDispatch)
    ['{354EA69A-3191-4DA4-B980-821BE9B7683C}']
    function  Get_NotifyType: ksDocument3DNotifyEnum; safecall;
    function  Get_NotifyObjectType: ksObj3dTypeEnum; safecall;
    function  Get_NotifyObject: IKompasAPIObject; safecall;
    property NotifyType: ksDocument3DNotifyEnum read Get_NotifyType;
    property NotifyObjectType: ksObj3dTypeEnum read Get_NotifyObjectType;
    property NotifyObject: IKompasAPIObject read Get_NotifyObject;
  end;

// *********************************************************************//
// DispIntf:  IKompasDocument3DNotifyResultDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {354EA69A-3191-4DA4-B980-821BE9B7683C}
// *********************************************************************//
  IKompasDocument3DNotifyResultDisp = dispinterface
    ['{354EA69A-3191-4DA4-B980-821BE9B7683C}']
    property NotifyType: ksDocument3DNotifyEnum readonly dispid 4001;
    property NotifyObjectType: ksObj3dTypeEnum readonly dispid 4002;
    property NotifyObject: IKompasAPIObject readonly dispid 4003;
  end;

// *********************************************************************//
// Interface: IModelContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2C6E8A0F-EDC8-413C-9304-9278817B915B}
// *********************************************************************//
  IModelContainer = interface(IDispatch)
    ['{2C6E8A0F-EDC8-413C-9304-9278817B915B}']
    function  Get_Objects(ObjType: OleVariant): OleVariant; safecall;
    function  Get_Sketchs: ISketchs; safecall;
    function  Get_Extrusions: IExtrusions; safecall;
    function  Get_Points3D: IPoints3D; safecall;
    property Objects[ObjType: OleVariant]: OleVariant read Get_Objects;
    property Sketchs: ISketchs read Get_Sketchs;
    property Extrusions: IExtrusions read Get_Extrusions;
    property Points3D: IPoints3D read Get_Points3D;
  end;

// *********************************************************************//
// DispIntf:  IModelContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2C6E8A0F-EDC8-413C-9304-9278817B915B}
// *********************************************************************//
  IModelContainerDisp = dispinterface
    ['{2C6E8A0F-EDC8-413C-9304-9278817B915B}']
    property Objects[ObjType: OleVariant]: OleVariant readonly dispid 10001;
    property Sketchs: ISketchs readonly dispid 10002;
    property Extrusions: IExtrusions readonly dispid 10003;
    property Points3D: IPoints3D readonly dispid 10004;
  end;

// *********************************************************************//
// Interface: ISketchs
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EE562963-395C-4748-9726-FCA9C531B1CA}
// *********************************************************************//
  ISketchs = interface(IModelObjects)
    ['{EE562963-395C-4748-9726-FCA9C531B1CA}']
    function  Get_Sketch(Index: OleVariant): ISketch; safecall;
    function  Add: ISketch; safecall;
    property Sketch[Index: OleVariant]: ISketch read Get_Sketch;
  end;

// *********************************************************************//
// DispIntf:  ISketchsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EE562963-395C-4748-9726-FCA9C531B1CA}
// *********************************************************************//
  ISketchsDisp = dispinterface
    ['{EE562963-395C-4748-9726-FCA9C531B1CA}']
    property Sketch[Index: OleVariant]: ISketch readonly dispid 1;
    function  Add: ISketch; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISketch
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E6BBF50D-8401-4FB3-A6B6-153D3F447255}
// *********************************************************************//
  ISketch = interface(IModelObject)
    ['{E6BBF50D-8401-4FB3-A6B6-153D3F447255}']
    procedure Set_Plane(const Result: IModelObject); safecall;
    function  Get_Plane: IModelObject; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  GetLocation(out X: Double; out Y: Double): WordBool; safecall;
    function  SetLocation(X: Double; Y: Double): WordBool; safecall;
    function  GetLoftPoint(out X: Double; out Y: Double): WordBool; safecall;
    function  SetLoftPoint(X: Double; Y: Double): WordBool; safecall;
    function  BeginEdit: IFragmentDocument; safecall;
    function  EndEdit: WordBool; safecall;
    property Plane: IModelObject read Get_Plane write Set_Plane;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  ISketchDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E6BBF50D-8401-4FB3-A6B6-153D3F447255}
// *********************************************************************//
  ISketchDisp = dispinterface
    ['{E6BBF50D-8401-4FB3-A6B6-153D3F447255}']
    property Plane: IModelObject dispid 1;
    property Angle: Double dispid 2;
    function  GetLocation(out X: Double; out Y: Double): WordBool; dispid 3;
    function  SetLocation(X: Double; Y: Double): WordBool; dispid 4;
    function  GetLoftPoint(out X: Double; out Y: Double): WordBool; dispid 5;
    function  SetLoftPoint(X: Double; Y: Double): WordBool; dispid 6;
    function  BeginEdit: IFragmentDocument; dispid 7;
    function  EndEdit: WordBool; dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IExtrusions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A160C032-CF96-4467-A682-CE2243DF76BD}
// *********************************************************************//
  IExtrusions = interface(IModelObjects)
    ['{A160C032-CF96-4467-A682-CE2243DF76BD}']
    function  Get_Extrusion(Index: OleVariant): IExtrusion; safecall;
    function  Add(ExtrusionType: ksObj3dTypeEnum): IExtrusion; safecall;
    property Extrusion[Index: OleVariant]: IExtrusion read Get_Extrusion;
  end;

// *********************************************************************//
// DispIntf:  IExtrusionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A160C032-CF96-4467-A682-CE2243DF76BD}
// *********************************************************************//
  IExtrusionsDisp = dispinterface
    ['{A160C032-CF96-4467-A682-CE2243DF76BD}']
    property Extrusion[Index: OleVariant]: IExtrusion readonly dispid 1;
    function  Add(ExtrusionType: ksObj3dTypeEnum): IExtrusion; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IExtrusion
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0D7FFE70-33EB-442C-A9B6-A205EA85A237}
// *********************************************************************//
  IExtrusion = interface(IModelObject)
    ['{0D7FFE70-33EB-442C-A9B6-A205EA85A237}']
    procedure Set_Sketch(const Result: ISketch); safecall;
    function  Get_Sketch: ISketch; safecall;
    procedure Set_Direction(PVal: ksDirectionTypeEnum); safecall;
    function  Get_Direction: ksDirectionTypeEnum; safecall;
    procedure Set_ExtrusionType(Normal: WordBool; PVal: ksEndTypeEnum); safecall;
    function  Get_ExtrusionType(Normal: WordBool): ksEndTypeEnum; safecall;
    procedure Set_Depth(Normal: WordBool; PVal: Double); safecall;
    function  Get_Depth(Normal: WordBool): Double; safecall;
    procedure Set_DraftValue(Normal: WordBool; PVal: Double); safecall;
    function  Get_DraftValue(Normal: WordBool): Double; safecall;
    procedure Set_DraftOutward(Normal: WordBool; PVal: WordBool); safecall;
    function  Get_DraftOutward(Normal: WordBool): WordBool; safecall;
    procedure Set_DepthObject(Normal: WordBool; const PVal: IModelObject); safecall;
    function  Get_DepthObject(Normal: WordBool): IModelObject; safecall;
    function  GetSideParameters(Normal: WordBool; out ExtrusionType: ksEndTypeEnum; 
                                out Depth: Double; out DraftValue: Double; 
                                out DraftOutward: WordBool; out DepthObject: IModelObject): WordBool; safecall;
    function  SetSideParameters(Normal: WordBool; ExtrusionType: ksEndTypeEnum; Depth: Double; 
                                DraftValue: Double; DraftOutward: WordBool; 
                                const DepthObject: IModelObject): WordBool; safecall;
    property Sketch: ISketch read Get_Sketch write Set_Sketch;
    property Direction: ksDirectionTypeEnum read Get_Direction write Set_Direction;
    property ExtrusionType[Normal: WordBool]: ksEndTypeEnum read Get_ExtrusionType write Set_ExtrusionType;
    property Depth[Normal: WordBool]: Double read Get_Depth write Set_Depth;
    property DraftValue[Normal: WordBool]: Double read Get_DraftValue write Set_DraftValue;
    property DraftOutward[Normal: WordBool]: WordBool read Get_DraftOutward write Set_DraftOutward;
    property DepthObject[Normal: WordBool]: IModelObject read Get_DepthObject write Set_DepthObject;
  end;

// *********************************************************************//
// DispIntf:  IExtrusionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0D7FFE70-33EB-442C-A9B6-A205EA85A237}
// *********************************************************************//
  IExtrusionDisp = dispinterface
    ['{0D7FFE70-33EB-442C-A9B6-A205EA85A237}']
    property Sketch: ISketch dispid 1;
    property Direction: ksDirectionTypeEnum dispid 2;
    property ExtrusionType[Normal: WordBool]: ksEndTypeEnum dispid 3;
    property Depth[Normal: WordBool]: Double dispid 4;
    property DraftValue[Normal: WordBool]: Double dispid 5;
    property DraftOutward[Normal: WordBool]: WordBool dispid 6;
    property DepthObject[Normal: WordBool]: IModelObject dispid 7;
    function  GetSideParameters(Normal: WordBool; out ExtrusionType: ksEndTypeEnum; 
                                out Depth: Double; out DraftValue: Double; 
                                out DraftOutward: WordBool; out DepthObject: IModelObject): WordBool; dispid 8;
    function  SetSideParameters(Normal: WordBool; ExtrusionType: ksEndTypeEnum; Depth: Double; 
                                DraftValue: Double; DraftOutward: WordBool; 
                                const DepthObject: IModelObject): WordBool; dispid 9;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoints3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {81EBB128-3963-4759-9D4E-2829C3078B0F}
// *********************************************************************//
  IPoints3D = interface(IModelObjects)
    ['{81EBB128-3963-4759-9D4E-2829C3078B0F}']
    function  Get_Point3D(Index: OleVariant): IPoint3D; safecall;
    function  Add: IPoint3D; safecall;
    property Point3D[Index: OleVariant]: IPoint3D read Get_Point3D;
  end;

// *********************************************************************//
// DispIntf:  IPoints3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {81EBB128-3963-4759-9D4E-2829C3078B0F}
// *********************************************************************//
  IPoints3DDisp = dispinterface
    ['{81EBB128-3963-4759-9D4E-2829C3078B0F}']
    property Point3D[Index: OleVariant]: IPoint3D readonly dispid 1;
    function  Add: IPoint3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMassInertiaParam7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {666C987F-2700-4C35-B8CE-DB8BFB5AAF02}
// *********************************************************************//
  IMassInertiaParam7 = interface(IDispatch)
    ['{666C987F-2700-4C35-B8CE-DB8BFB5AAF02}']
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Zc(PVal: Double); safecall;
    function  Get_Zc: Double; safecall;
    procedure Set_ManualMassCentre(PVal: WordBool); safecall;
    function  Get_ManualMassCentre: WordBool; safecall;
    procedure Set_LengthUnits(PVal: ksLengthUnitsEnum); safecall;
    function  Get_LengthUnits: ksLengthUnitsEnum; safecall;
    procedure Set_MassUnits(PVal: ksMassUnitsEnum); safecall;
    function  Get_MassUnits: ksMassUnitsEnum; safecall;
    procedure Set_ManualMass(Param1: Double); safecall;
    function  Get_CalculateMass: Double; safecall;
    procedure Set_MassSettingMode(PVal: ksMassSettingModeEnum); safecall;
    function  Get_MassSettingMode: ksMassSettingModeEnum; safecall;
    procedure Set_ManualDensity(Param1: Double); safecall;
    function  Get_HandBookDensity: Double; safecall;
    procedure Set_DensityMode(PVal: WordBool); safecall;
    function  Get_DensityMode: WordBool; safecall;
    function  Get_Volume: Double; safecall;
    function  Get_Area: Double; safecall;
    procedure Set_SourceData(PVal: WordBool); safecall;
    function  Get_SourceData: WordBool; safecall;
    function  Get_Actual: WordBool; safecall;
    function  Calculate: WordBool; safecall;
    function  Get_LX: Double; safecall;
    function  Get_LY: Double; safecall;
    function  Get_Lz: Double; safecall;
    function  Get_Lxy: Double; safecall;
    function  Get_Lxz: Double; safecall;
    function  Get_Lyz: Double; safecall;
    function  Get_Jx: Double; safecall;
    function  Get_Jy: Double; safecall;
    function  Get_Jz: Double; safecall;
    function  Get_Jxy: Double; safecall;
    function  Get_Jxz: Double; safecall;
    function  Get_Jyz: Double; safecall;
    function  Get_Jx0: Double; safecall;
    function  Get_Jy0: Double; safecall;
    function  Get_Jz0: Double; safecall;
    function  GetAxisX(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  GetAxisY(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  GetAxisZ(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  Get_Mass: Double; safecall;
    function  Get_Density: Double; safecall;
    function  Get_Material: WideString; safecall;
    function  SetMaterial(const Name: WideString; Density: Double): WordBool; safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Zc: Double read Get_Zc write Set_Zc;
    property ManualMassCentre: WordBool read Get_ManualMassCentre write Set_ManualMassCentre;
    property LengthUnits: ksLengthUnitsEnum read Get_LengthUnits write Set_LengthUnits;
    property MassUnits: ksMassUnitsEnum read Get_MassUnits write Set_MassUnits;
    property ManualMass: Double write Set_ManualMass;
    property CalculateMass: Double read Get_CalculateMass;
    property MassSettingMode: ksMassSettingModeEnum read Get_MassSettingMode write Set_MassSettingMode;
    property ManualDensity: Double write Set_ManualDensity;
    property HandBookDensity: Double read Get_HandBookDensity;
    property DensityMode: WordBool read Get_DensityMode write Set_DensityMode;
    property Volume: Double read Get_Volume;
    property Area: Double read Get_Area;
    property SourceData: WordBool read Get_SourceData write Set_SourceData;
    property Actual: WordBool read Get_Actual;
    property LX: Double read Get_LX;
    property LY: Double read Get_LY;
    property Lz: Double read Get_Lz;
    property Lxy: Double read Get_Lxy;
    property Lxz: Double read Get_Lxz;
    property Lyz: Double read Get_Lyz;
    property Jx: Double read Get_Jx;
    property Jy: Double read Get_Jy;
    property Jz: Double read Get_Jz;
    property Jxy: Double read Get_Jxy;
    property Jxz: Double read Get_Jxz;
    property Jyz: Double read Get_Jyz;
    property Jx0: Double read Get_Jx0;
    property Jy0: Double read Get_Jy0;
    property Jz0: Double read Get_Jz0;
    property Mass: Double read Get_Mass;
    property Density: Double read Get_Density;
    property Material: WideString read Get_Material;
  end;

// *********************************************************************//
// DispIntf:  IMassInertiaParam7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {666C987F-2700-4C35-B8CE-DB8BFB5AAF02}
// *********************************************************************//
  IMassInertiaParam7Disp = dispinterface
    ['{666C987F-2700-4C35-B8CE-DB8BFB5AAF02}']
    property Xc: Double dispid 3001;
    property Yc: Double dispid 3002;
    property Zc: Double dispid 3003;
    property ManualMassCentre: WordBool dispid 3004;
    property LengthUnits: ksLengthUnitsEnum dispid 3005;
    property MassUnits: ksMassUnitsEnum dispid 3006;
    property ManualMass: Double writeonly dispid 3007;
    property CalculateMass: Double readonly dispid 3008;
    property MassSettingMode: ksMassSettingModeEnum dispid 3009;
    property ManualDensity: Double writeonly dispid 3010;
    property HandBookDensity: Double readonly dispid 3011;
    property DensityMode: WordBool dispid 3012;
    property Volume: Double readonly dispid 3013;
    property Area: Double readonly dispid 3014;
    property SourceData: WordBool dispid 3015;
    property Actual: WordBool readonly dispid 3016;
    function  Calculate: WordBool; dispid 3017;
    property LX: Double readonly dispid 3018;
    property LY: Double readonly dispid 3019;
    property Lz: Double readonly dispid 3020;
    property Lxy: Double readonly dispid 3021;
    property Lxz: Double readonly dispid 3022;
    property Lyz: Double readonly dispid 3023;
    property Jx: Double readonly dispid 3024;
    property Jy: Double readonly dispid 3025;
    property Jz: Double readonly dispid 3026;
    property Jxy: Double readonly dispid 3027;
    property Jxz: Double readonly dispid 3028;
    property Jyz: Double readonly dispid 3029;
    property Jx0: Double readonly dispid 3030;
    property Jy0: Double readonly dispid 3031;
    property Jz0: Double readonly dispid 3032;
    function  GetAxisX(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3033;
    function  GetAxisY(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3034;
    function  GetAxisZ(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3035;
    property Mass: Double readonly dispid 3036;
    property Density: Double readonly dispid 3037;
    property Material: WideString readonly dispid 3038;
    function  SetMaterial(const Name: WideString; Density: Double): WordBool; dispid 3039;
  end;

// *********************************************************************//
// Interface: IThinParameters
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B90D597D-4213-4A59-98D4-0B67E719551B}
// *********************************************************************//
  IThinParameters = interface(IDispatch)
    ['{B90D597D-4213-4A59-98D4-0B67E719551B}']
    procedure Set_Thin(PVal: WordBool); safecall;
    function  Get_Thin: WordBool; safecall;
    procedure Set_ThinType(PVal: ksDirectionTypeEnum); safecall;
    function  Get_ThinType: ksDirectionTypeEnum; safecall;
    procedure Set_Thickness(Normal: WordBool; PVal: Double); safecall;
    function  Get_Thickness(Normal: WordBool): Double; safecall;
    function  GetThinParameters(out Thin: WordBool; out ThinType: ksDirectionTypeEnum; 
                                out ThicknessNormal: Double; out ThicknessReverse: Double): WordBool; safecall;
    function  SetThinParameters(Thin: WordBool; ThinType: ksDirectionTypeEnum; 
                                ThicknessNormal: Double; ThicknessReverse: Double): WordBool; safecall;
    property Thin: WordBool read Get_Thin write Set_Thin;
    property ThinType: ksDirectionTypeEnum read Get_ThinType write Set_ThinType;
    property Thickness[Normal: WordBool]: Double read Get_Thickness write Set_Thickness;
  end;

// *********************************************************************//
// DispIntf:  IThinParametersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B90D597D-4213-4A59-98D4-0B67E719551B}
// *********************************************************************//
  IThinParametersDisp = dispinterface
    ['{B90D597D-4213-4A59-98D4-0B67E719551B}']
    property Thin: WordBool dispid 2501;
    property ThinType: ksDirectionTypeEnum dispid 2502;
    property Thickness[Normal: WordBool]: Double dispid 2503;
    function  GetThinParameters(out Thin: WordBool; out ThinType: ksDirectionTypeEnum; 
                                out ThicknessNormal: Double; out ThicknessReverse: Double): WordBool; dispid 2504;
    function  SetThinParameters(Thin: WordBool; ThinType: ksDirectionTypeEnum; 
                                ThicknessNormal: Double; ThicknessReverse: Double): WordBool; dispid 2505;
  end;

// *********************************************************************//
// Interface: ICutExtrusion
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D2A01420-9159-48C2-8302-C1B10A13D8F8}
// *********************************************************************//
  ICutExtrusion = interface(IExtrusion)
    ['{D2A01420-9159-48C2-8302-C1B10A13D8F8}']
    procedure Set_Cut(PVal: WordBool); safecall;
    function  Get_Cut: WordBool; safecall;
    property Cut: WordBool read Get_Cut write Set_Cut;
  end;

// *********************************************************************//
// DispIntf:  ICutExtrusionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D2A01420-9159-48C2-8302-C1B10A13D8F8}
// *********************************************************************//
  ICutExtrusionDisp = dispinterface
    ['{D2A01420-9159-48C2-8302-C1B10A13D8F8}']
    property Cut: WordBool dispid 101;
    property Sketch: ISketch dispid 1;
    property Direction: ksDirectionTypeEnum dispid 2;
    property ExtrusionType[Normal: WordBool]: ksEndTypeEnum dispid 3;
    property Depth[Normal: WordBool]: Double dispid 4;
    property DraftValue[Normal: WordBool]: Double dispid 5;
    property DraftOutward[Normal: WordBool]: WordBool dispid 6;
    property DepthObject[Normal: WordBool]: IModelObject dispid 7;
    function  GetSideParameters(Normal: WordBool; out ExtrusionType: ksEndTypeEnum; 
                                out Depth: Double; out DraftValue: Double; 
                                out DraftOutward: WordBool; out DepthObject: IModelObject): WordBool; dispid 8;
    function  SetSideParameters(Normal: WordBool; ExtrusionType: ksEndTypeEnum; Depth: Double; 
                                DraftValue: Double; DraftOutward: WordBool; 
                                const DepthObject: IModelObject): WordBool; dispid 9;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IChooseBodies7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7BF80DAA-25F8-4AFF-AFEA-CAD390D4275D}
// *********************************************************************//
  IChooseBodies7 = interface(IDispatch)
    ['{7BF80DAA-25F8-4AFF-AFEA-CAD390D4275D}']
    procedure Set_ChooseBodiesType(Type_: ksChooseBodiesType); safecall;
    function  Get_ChooseBodiesType: ksChooseBodiesType; safecall;
    procedure Set_Bodies(Result: OleVariant); safecall;
    function  Get_Bodies: OleVariant; safecall;
    property ChooseBodiesType: ksChooseBodiesType read Get_ChooseBodiesType write Set_ChooseBodiesType;
    property Bodies: OleVariant read Get_Bodies write Set_Bodies;
  end;

// *********************************************************************//
// DispIntf:  IChooseBodies7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7BF80DAA-25F8-4AFF-AFEA-CAD390D4275D}
// *********************************************************************//
  IChooseBodies7Disp = dispinterface
    ['{7BF80DAA-25F8-4AFF-AFEA-CAD390D4275D}']
    property ChooseBodiesType: ksChooseBodiesType dispid 3001;
    property Bodies: OleVariant dispid 3002;
  end;

// *********************************************************************//
// Interface: IBody7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4F122E22-0AA6-46E1-841F-A2504B145995}
// *********************************************************************//
  IBody7 = interface(IKompasAPIObject)
    ['{4F122E22-0AA6-46E1-841F-A2504B145995}']
    function  GetGabarit(out X1: Double; out Y1: Double; out Z1: Double; out X2: Double; 
                         out Y2: Double; out Z2: Double): WordBool; safecall;
    function  Get_Marking: WideString; safecall;
    procedure Set_Marking(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Update: WordBool; safecall;
    procedure Set_Hidden(PVal: WordBool); safecall;
    function  Get_Hidden: WordBool; safecall;
    property Marking: WideString read Get_Marking write Set_Marking;
    property Name: WideString read Get_Name write Set_Name;
    property Hidden: WordBool read Get_Hidden write Set_Hidden;
  end;

// *********************************************************************//
// DispIntf:  IBody7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4F122E22-0AA6-46E1-841F-A2504B145995}
// *********************************************************************//
  IBody7Disp = dispinterface
    ['{4F122E22-0AA6-46E1-841F-A2504B145995}']
    function  GetGabarit(out X1: Double; out Y1: Double; out Z1: Double; out X2: Double; 
                         out Y2: Double; out Z2: Double): WordBool; dispid 1;
    property Marking: WideString dispid 2;
    property Name: WideString dispid 3;
    function  Update: WordBool; dispid 4;
    property Hidden: WordBool dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalBodies
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F56DBE72-48CC-48AD-9DA4-10D972C903EE}
// *********************************************************************//
  ISheetMetalBodies = interface(IModelObjects)
    ['{F56DBE72-48CC-48AD-9DA4-10D972C903EE}']
    function  Get_SheetMetalBody(Index: OleVariant): ISheetMetalBody; safecall;
    function  Add: ISheetMetalBody; safecall;
    property SheetMetalBody[Index: OleVariant]: ISheetMetalBody read Get_SheetMetalBody;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalBodiesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F56DBE72-48CC-48AD-9DA4-10D972C903EE}
// *********************************************************************//
  ISheetMetalBodiesDisp = dispinterface
    ['{F56DBE72-48CC-48AD-9DA4-10D972C903EE}']
    property SheetMetalBody[Index: OleVariant]: ISheetMetalBody readonly dispid 1;
    function  Add: ISheetMetalBody; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalBody
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2DC533DC-829E-4EFF-A905-541E9220A12D}
// *********************************************************************//
  ISheetMetalBody = interface(IModelObject)
    ['{2DC533DC-829E-4EFF-A905-541E9220A12D}']
    procedure Set_ThicknessDirection(PVal: WordBool); safecall;
    function  Get_ThicknessDirection: WordBool; safecall;
    procedure Set_Thickness(PVal: Double); safecall;
    function  Get_Thickness: Double; safecall;
    procedure Set_Straighten(PVal: WordBool); safecall;
    function  Get_Straighten: WordBool; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_UnfoldType(PVal: ksUnfoldTypeEnum); safecall;
    function  Get_UnfoldType: ksUnfoldTypeEnum; safecall;
    procedure Set_BendCoefficient(PVal: Double); safecall;
    function  Get_BendCoefficient: Double; safecall;
    procedure Set_BendValue(PVal: Double); safecall;
    function  Get_BendValue: Double; safecall;
    procedure Set_BendReduction(PVal: Double); safecall;
    function  Get_BendReduction: Double; safecall;
    procedure Set_BendTablePath(const PVal: WideString); safecall;
    function  Get_BendTablePath: WideString; safecall;
    procedure Set_Sketch(const Result: ISketch); safecall;
    function  Get_Sketch: ISketch; safecall;
    procedure Set_Direction(PVal: ksDirectionTypeEnum); safecall;
    function  Get_Direction: ksDirectionTypeEnum; safecall;
    procedure Set_ExtrusionType(Normal: WordBool; PVal: ksEndTypeEnum); safecall;
    function  Get_ExtrusionType(Normal: WordBool): ksEndTypeEnum; safecall;
    procedure Set_Depth(Normal: WordBool; PVal: Double); safecall;
    function  Get_Depth(Normal: WordBool): Double; safecall;
    procedure Set_DepthObject(Normal: WordBool; const PVal: IModelObject); safecall;
    function  Get_DepthObject(Normal: WordBool): IModelObject; safecall;
    function  GetSideParameters(Normal: WordBool; out ExtrusionType: ksEndTypeEnum; 
                                out Depth: Double; out DepthObject: IModelObject): WordBool; safecall;
    function  SetSideParameters(Normal: WordBool; ExtrusionType: ksEndTypeEnum; Depth: Double; 
                                const DepthObject: IModelObject): WordBool; safecall;
    property ThicknessDirection: WordBool read Get_ThicknessDirection write Set_ThicknessDirection;
    property Thickness: Double read Get_Thickness write Set_Thickness;
    property Straighten: WordBool read Get_Straighten write Set_Straighten;
    property Radius: Double read Get_Radius write Set_Radius;
    property UnfoldType: ksUnfoldTypeEnum read Get_UnfoldType write Set_UnfoldType;
    property BendCoefficient: Double read Get_BendCoefficient write Set_BendCoefficient;
    property BendValue: Double read Get_BendValue write Set_BendValue;
    property BendReduction: Double read Get_BendReduction write Set_BendReduction;
    property BendTablePath: WideString read Get_BendTablePath write Set_BendTablePath;
    property Sketch: ISketch read Get_Sketch write Set_Sketch;
    property Direction: ksDirectionTypeEnum read Get_Direction write Set_Direction;
    property ExtrusionType[Normal: WordBool]: ksEndTypeEnum read Get_ExtrusionType write Set_ExtrusionType;
    property Depth[Normal: WordBool]: Double read Get_Depth write Set_Depth;
    property DepthObject[Normal: WordBool]: IModelObject read Get_DepthObject write Set_DepthObject;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalBodyDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2DC533DC-829E-4EFF-A905-541E9220A12D}
// *********************************************************************//
  ISheetMetalBodyDisp = dispinterface
    ['{2DC533DC-829E-4EFF-A905-541E9220A12D}']
    property ThicknessDirection: WordBool dispid 1;
    property Thickness: Double dispid 2;
    property Straighten: WordBool dispid 3;
    property Radius: Double dispid 4;
    property UnfoldType: ksUnfoldTypeEnum dispid 5;
    property BendCoefficient: Double dispid 6;
    property BendValue: Double dispid 7;
    property BendReduction: Double dispid 8;
    property BendTablePath: WideString dispid 9;
    property Sketch: ISketch dispid 10;
    property Direction: ksDirectionTypeEnum dispid 11;
    property ExtrusionType[Normal: WordBool]: ksEndTypeEnum dispid 12;
    property Depth[Normal: WordBool]: Double dispid 13;
    property DepthObject[Normal: WordBool]: IModelObject dispid 14;
    function  GetSideParameters(Normal: WordBool; out ExtrusionType: ksEndTypeEnum; 
                                out Depth: Double; out DepthObject: IModelObject): WordBool; dispid 15;
    function  SetSideParameters(Normal: WordBool; ExtrusionType: ksEndTypeEnum; Depth: Double; 
                                const DepthObject: IModelObject): WordBool; dispid 16;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {77A4895D-9B09-4C63-A3FF-6857F4340840}
// *********************************************************************//
  ISheetMetalContainer = interface(IDispatch)
    ['{77A4895D-9B09-4C63-A3FF-6857F4340840}']
    function  Get_SheetMetalBodies: ISheetMetalBodies; safecall;
    function  Get_SheetMetalBends: ISheetMetalBends; safecall;
    function  Get_SheetMetalLineBends: ISheetMetalLineBends; safecall;
    function  Get_SheetMetalHoles: ISheetMetalHoles; safecall;
    function  Get_SheetMetalCuts: ISheetMetalCuts; safecall;
    property SheetMetalBodies: ISheetMetalBodies read Get_SheetMetalBodies;
    property SheetMetalBends: ISheetMetalBends read Get_SheetMetalBends;
    property SheetMetalLineBends: ISheetMetalLineBends read Get_SheetMetalLineBends;
    property SheetMetalHoles: ISheetMetalHoles read Get_SheetMetalHoles;
    property SheetMetalCuts: ISheetMetalCuts read Get_SheetMetalCuts;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {77A4895D-9B09-4C63-A3FF-6857F4340840}
// *********************************************************************//
  ISheetMetalContainerDisp = dispinterface
    ['{77A4895D-9B09-4C63-A3FF-6857F4340840}']
    property SheetMetalBodies: ISheetMetalBodies readonly dispid 11001;
    property SheetMetalBends: ISheetMetalBends readonly dispid 11002;
    property SheetMetalLineBends: ISheetMetalLineBends readonly dispid 11003;
    property SheetMetalHoles: ISheetMetalHoles readonly dispid 11004;
    property SheetMetalCuts: ISheetMetalCuts readonly dispid 11005;
  end;

// *********************************************************************//
// Interface: ISheetMetalBends
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6826CFD6-6A48-4EB1-8C89-7DB4E36702B4}
// *********************************************************************//
  ISheetMetalBends = interface(IModelObjects)
    ['{6826CFD6-6A48-4EB1-8C89-7DB4E36702B4}']
    function  Get_SheetMetalBend(Index: OleVariant): ISheetMetalBend; safecall;
    function  Add: ISheetMetalBend; safecall;
    property SheetMetalBend[Index: OleVariant]: ISheetMetalBend read Get_SheetMetalBend;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalBendsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6826CFD6-6A48-4EB1-8C89-7DB4E36702B4}
// *********************************************************************//
  ISheetMetalBendsDisp = dispinterface
    ['{6826CFD6-6A48-4EB1-8C89-7DB4E36702B4}']
    property SheetMetalBend[Index: OleVariant]: ISheetMetalBend readonly dispid 1;
    function  Add: ISheetMetalBend; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalBend
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B631D95F-C487-41D6-9726-C65E9F5A4505}
// *********************************************************************//
  ISheetMetalBend = interface(IModelObject)
    ['{B631D95F-C487-41D6-9726-C65E9F5A4505}']
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_Disposal(PVal: ksBendDisposalEnum); safecall;
    function  Get_Disposal: ksBendDisposalEnum; safecall;
    procedure Set_Width(PVal: Double); safecall;
    function  Get_Width: Double; safecall;
    procedure Set_LengthType(PVal: ksBendLengthTypeEnum); safecall;
    function  Get_LengthType: ksBendLengthTypeEnum; safecall;
    procedure Set_InternalLength(PVal: WordBool); safecall;
    function  Get_InternalLength: WordBool; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_AngleType(PVal: WordBool); safecall;
    function  Get_AngleType: WordBool; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_OffsetType(PVal: ksBendOffsetTypeEnum); safecall;
    function  Get_OffsetType: ksBendOffsetTypeEnum; safecall;
    procedure Set_Offset(PVal: Double); safecall;
    function  Get_Offset: Double; safecall;
    procedure Set_Straighten(PVal: WordBool); safecall;
    function  Get_Straighten: WordBool; safecall;
    procedure Set_LeftSideType(PVal: ksBendSideTypeEnum); safecall;
    function  Get_LeftSideType: ksBendSideTypeEnum; safecall;
    procedure Set_DistanceLeftSide(PVal: Double); safecall;
    function  Get_DistanceLeftSide: Double; safecall;
    procedure Set_LeftSideAngle(PVal: Double); safecall;
    function  Get_LeftSideAngle: Double; safecall;
    procedure Set_DeviationLeftSide(PVal: Double); safecall;
    function  Get_DeviationLeftSide: Double; safecall;
    procedure Set_WideningLeftSide(PVal: Double); safecall;
    function  Get_WideningLeftSide: Double; safecall;
    procedure Set_RightSideType(PVal: ksBendSideTypeEnum); safecall;
    function  Get_RightSideType: ksBendSideTypeEnum; safecall;
    procedure Set_DistanceRightSide(PVal: Double); safecall;
    function  Get_DistanceRightSide: Double; safecall;
    procedure Set_RightSideAngle(PVal: Double); safecall;
    function  Get_RightSideAngle: Double; safecall;
    procedure Set_DeviationRightSide(PVal: Double); safecall;
    function  Get_DeviationRightSide: Double; safecall;
    procedure Set_WideningRightSide(PVal: Double); safecall;
    function  Get_WideningRightSide: Double; safecall;
    procedure Set_WithoutAngleRelease(PVal: WordBool); safecall;
    function  Get_WithoutAngleRelease: WordBool; safecall;
    procedure Set_WithoutBendRelease(PVal: WordBool); safecall;
    function  Get_WithoutBendRelease: WordBool; safecall;
    procedure Set_DismissalWithWidth(PVal: WordBool); safecall;
    function  Get_DismissalWithWidth: WordBool; safecall;
    procedure Set_BendRelease(PVal: ksBendReleaseTypeEnum); safecall;
    function  Get_BendRelease: ksBendReleaseTypeEnum; safecall;
    procedure Set_DismissalWidth(PVal: Double); safecall;
    function  Get_DismissalWidth: Double; safecall;
    procedure Set_DismissalDepth(PVal: Double); safecall;
    function  Get_DismissalDepth: Double; safecall;
    procedure Set_DismissalAngleType(PVal: ksBendAngleReleaseTypeEnum); safecall;
    function  Get_DismissalAngleType: ksBendAngleReleaseTypeEnum; safecall;
    procedure Set_BendObject(const Result: IModelObject); safecall;
    function  Get_BendObject: IModelObject; safecall;
    procedure Set_InternalRadius(PVal: WordBool); safecall;
    function  Get_InternalRadius: WordBool; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_UnfoldType(PVal: ksUnfoldTypeEnum); safecall;
    function  Get_UnfoldType: ksUnfoldTypeEnum; safecall;
    procedure Set_BendCoefficient(PVal: Double); safecall;
    function  Get_BendCoefficient: Double; safecall;
    procedure Set_BendValue(PVal: Double); safecall;
    function  Get_BendValue: Double; safecall;
    procedure Set_BendReduction(PVal: Double); safecall;
    function  Get_BendReduction: Double; safecall;
    function  Get_BendTablePath: WideString; safecall;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property Disposal: ksBendDisposalEnum read Get_Disposal write Set_Disposal;
    property Width: Double read Get_Width write Set_Width;
    property LengthType: ksBendLengthTypeEnum read Get_LengthType write Set_LengthType;
    property InternalLength: WordBool read Get_InternalLength write Set_InternalLength;
    property Length: Double read Get_Length write Set_Length;
    property AngleType: WordBool read Get_AngleType write Set_AngleType;
    property Angle: Double read Get_Angle write Set_Angle;
    property OffsetType: ksBendOffsetTypeEnum read Get_OffsetType write Set_OffsetType;
    property Offset: Double read Get_Offset write Set_Offset;
    property Straighten: WordBool read Get_Straighten write Set_Straighten;
    property LeftSideType: ksBendSideTypeEnum read Get_LeftSideType write Set_LeftSideType;
    property DistanceLeftSide: Double read Get_DistanceLeftSide write Set_DistanceLeftSide;
    property LeftSideAngle: Double read Get_LeftSideAngle write Set_LeftSideAngle;
    property DeviationLeftSide: Double read Get_DeviationLeftSide write Set_DeviationLeftSide;
    property WideningLeftSide: Double read Get_WideningLeftSide write Set_WideningLeftSide;
    property RightSideType: ksBendSideTypeEnum read Get_RightSideType write Set_RightSideType;
    property DistanceRightSide: Double read Get_DistanceRightSide write Set_DistanceRightSide;
    property RightSideAngle: Double read Get_RightSideAngle write Set_RightSideAngle;
    property DeviationRightSide: Double read Get_DeviationRightSide write Set_DeviationRightSide;
    property WideningRightSide: Double read Get_WideningRightSide write Set_WideningRightSide;
    property WithoutAngleRelease: WordBool read Get_WithoutAngleRelease write Set_WithoutAngleRelease;
    property WithoutBendRelease: WordBool read Get_WithoutBendRelease write Set_WithoutBendRelease;
    property DismissalWithWidth: WordBool read Get_DismissalWithWidth write Set_DismissalWithWidth;
    property BendRelease: ksBendReleaseTypeEnum read Get_BendRelease write Set_BendRelease;
    property DismissalWidth: Double read Get_DismissalWidth write Set_DismissalWidth;
    property DismissalDepth: Double read Get_DismissalDepth write Set_DismissalDepth;
    property DismissalAngleType: ksBendAngleReleaseTypeEnum read Get_DismissalAngleType write Set_DismissalAngleType;
    property BendObject: IModelObject read Get_BendObject write Set_BendObject;
    property InternalRadius: WordBool read Get_InternalRadius write Set_InternalRadius;
    property Radius: Double read Get_Radius write Set_Radius;
    property UnfoldType: ksUnfoldTypeEnum read Get_UnfoldType write Set_UnfoldType;
    property BendCoefficient: Double read Get_BendCoefficient write Set_BendCoefficient;
    property BendValue: Double read Get_BendValue write Set_BendValue;
    property BendReduction: Double read Get_BendReduction write Set_BendReduction;
    property BendTablePath: WideString read Get_BendTablePath;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalBendDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B631D95F-C487-41D6-9726-C65E9F5A4505}
// *********************************************************************//
  ISheetMetalBendDisp = dispinterface
    ['{B631D95F-C487-41D6-9726-C65E9F5A4505}']
    property Direction: WordBool dispid 1;
    property Disposal: ksBendDisposalEnum dispid 2;
    property Width: Double dispid 3;
    property LengthType: ksBendLengthTypeEnum dispid 4;
    property InternalLength: WordBool dispid 5;
    property Length: Double dispid 6;
    property AngleType: WordBool dispid 7;
    property Angle: Double dispid 8;
    property OffsetType: ksBendOffsetTypeEnum dispid 9;
    property Offset: Double dispid 10;
    property Straighten: WordBool dispid 11;
    property LeftSideType: ksBendSideTypeEnum dispid 12;
    property DistanceLeftSide: Double dispid 13;
    property LeftSideAngle: Double dispid 14;
    property DeviationLeftSide: Double dispid 15;
    property WideningLeftSide: Double dispid 16;
    property RightSideType: ksBendSideTypeEnum dispid 17;
    property DistanceRightSide: Double dispid 18;
    property RightSideAngle: Double dispid 19;
    property DeviationRightSide: Double dispid 20;
    property WideningRightSide: Double dispid 21;
    property WithoutAngleRelease: WordBool dispid 22;
    property WithoutBendRelease: WordBool dispid 23;
    property DismissalWithWidth: WordBool dispid 24;
    property BendRelease: ksBendReleaseTypeEnum dispid 25;
    property DismissalWidth: Double dispid 26;
    property DismissalDepth: Double dispid 27;
    property DismissalAngleType: ksBendAngleReleaseTypeEnum dispid 28;
    property BendObject: IModelObject dispid 29;
    property InternalRadius: WordBool dispid 30;
    property Radius: Double dispid 31;
    property UnfoldType: ksUnfoldTypeEnum dispid 32;
    property BendCoefficient: Double dispid 33;
    property BendValue: Double dispid 34;
    property BendReduction: Double dispid 35;
    property BendTablePath: WideString readonly dispid 36;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalLineBends
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AF8B8310-AF82-4B02-8733-783FFAFD4DBD}
// *********************************************************************//
  ISheetMetalLineBends = interface(IModelObjects)
    ['{AF8B8310-AF82-4B02-8733-783FFAFD4DBD}']
    function  Get_SheetMetalLineBend(Index: OleVariant): ISheetMetalLineBend; safecall;
    function  Add: ISheetMetalLineBend; safecall;
    property SheetMetalLineBend[Index: OleVariant]: ISheetMetalLineBend read Get_SheetMetalLineBend;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalLineBendsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AF8B8310-AF82-4B02-8733-783FFAFD4DBD}
// *********************************************************************//
  ISheetMetalLineBendsDisp = dispinterface
    ['{AF8B8310-AF82-4B02-8733-783FFAFD4DBD}']
    property SheetMetalLineBend[Index: OleVariant]: ISheetMetalLineBend readonly dispid 1;
    function  Add: ISheetMetalLineBend; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalLineBend
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E13EF07A-B1E8-41FD-9C85-C17F01E52A03}
// *********************************************************************//
  ISheetMetalLineBend = interface(IModelObject)
    ['{E13EF07A-B1E8-41FD-9C85-C17F01E52A03}']
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_BendLeftSideFixed(PVal: WordBool); safecall;
    function  Get_BendLeftSideFixed: WordBool; safecall;
    procedure Set_AngleType(PVal: WordBool); safecall;
    function  Get_AngleType: WordBool; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_BendType(PVal: ksBendTypeEnum); safecall;
    function  Get_BendType: ksBendTypeEnum; safecall;
    procedure Set_Straighten(PVal: WordBool); safecall;
    function  Get_Straighten: WordBool; safecall;
    procedure Set_DismissalAngleType(PVal: ksBendAngleReleaseTypeEnum); safecall;
    function  Get_DismissalAngleType: ksBendAngleReleaseTypeEnum; safecall;
    procedure Set_InternalRadius(PVal: WordBool); safecall;
    function  Get_InternalRadius: WordBool; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_UnfoldType(PVal: ksUnfoldTypeEnum); safecall;
    function  Get_UnfoldType: ksUnfoldTypeEnum; safecall;
    procedure Set_BendCoefficient(PVal: Double); safecall;
    function  Get_BendCoefficient: Double; safecall;
    procedure Set_BendValue(PVal: Double); safecall;
    function  Get_BendValue: Double; safecall;
    procedure Set_BendReduction(PVal: Double); safecall;
    function  Get_BendReduction: Double; safecall;
    function  Get_BendTablePath: WideString; safecall;
    procedure Set_Faces(Result: OleVariant); safecall;
    function  Get_Faces: OleVariant; safecall;
    procedure Set_Line(const Result: IModelObject); safecall;
    function  Get_Line: IModelObject; safecall;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property BendLeftSideFixed: WordBool read Get_BendLeftSideFixed write Set_BendLeftSideFixed;
    property AngleType: WordBool read Get_AngleType write Set_AngleType;
    property Angle: Double read Get_Angle write Set_Angle;
    property BendType: ksBendTypeEnum read Get_BendType write Set_BendType;
    property Straighten: WordBool read Get_Straighten write Set_Straighten;
    property DismissalAngleType: ksBendAngleReleaseTypeEnum read Get_DismissalAngleType write Set_DismissalAngleType;
    property InternalRadius: WordBool read Get_InternalRadius write Set_InternalRadius;
    property Radius: Double read Get_Radius write Set_Radius;
    property UnfoldType: ksUnfoldTypeEnum read Get_UnfoldType write Set_UnfoldType;
    property BendCoefficient: Double read Get_BendCoefficient write Set_BendCoefficient;
    property BendValue: Double read Get_BendValue write Set_BendValue;
    property BendReduction: Double read Get_BendReduction write Set_BendReduction;
    property BendTablePath: WideString read Get_BendTablePath;
    property Faces: OleVariant read Get_Faces write Set_Faces;
    property Line: IModelObject read Get_Line write Set_Line;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalLineBendDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E13EF07A-B1E8-41FD-9C85-C17F01E52A03}
// *********************************************************************//
  ISheetMetalLineBendDisp = dispinterface
    ['{E13EF07A-B1E8-41FD-9C85-C17F01E52A03}']
    property Direction: WordBool dispid 1;
    property BendLeftSideFixed: WordBool dispid 2;
    property AngleType: WordBool dispid 3;
    property Angle: Double dispid 4;
    property BendType: ksBendTypeEnum dispid 5;
    property Straighten: WordBool dispid 6;
    property DismissalAngleType: ksBendAngleReleaseTypeEnum dispid 7;
    property InternalRadius: WordBool dispid 8;
    property Radius: Double dispid 9;
    property UnfoldType: ksUnfoldTypeEnum dispid 10;
    property BendCoefficient: Double dispid 11;
    property BendValue: Double dispid 12;
    property BendReduction: Double dispid 13;
    property BendTablePath: WideString readonly dispid 14;
    property Faces: OleVariant dispid 15;
    property Line: IModelObject dispid 16;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalHoles
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E117BDF9-5133-4672-9B8F-06046F6B9BF3}
// *********************************************************************//
  ISheetMetalHoles = interface(IModelObjects)
    ['{E117BDF9-5133-4672-9B8F-06046F6B9BF3}']
    function  Get_SheetMetalHole(Index: OleVariant): ISheetMetalHole; safecall;
    function  Add: ISheetMetalHole; safecall;
    property SheetMetalHole[Index: OleVariant]: ISheetMetalHole read Get_SheetMetalHole;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalHolesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E117BDF9-5133-4672-9B8F-06046F6B9BF3}
// *********************************************************************//
  ISheetMetalHolesDisp = dispinterface
    ['{E117BDF9-5133-4672-9B8F-06046F6B9BF3}']
    property SheetMetalHole[Index: OleVariant]: ISheetMetalHole readonly dispid 1;
    function  Add: ISheetMetalHole; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalHole
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3490B8B8-00D7-4BCF-AAD8-9487BF271084}
// *********************************************************************//
  ISheetMetalHole = interface(IModelObject)
    ['{3490B8B8-00D7-4BCF-AAD8-9487BF271084}']
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_CutType(PVal: ksHoleCutTypeEnum); safecall;
    function  Get_CutType: ksHoleCutTypeEnum; safecall;
    procedure Set_Diameter(PVal: Double); safecall;
    function  Get_Diameter: Double; safecall;
    procedure Set_Depth(PVal: Double); safecall;
    function  Get_Depth: Double; safecall;
    procedure Set_BasePlane(const Result: IModelObject); safecall;
    function  Get_BasePlane: IModelObject; safecall;
    procedure Set_DepthObject(const PVal: IModelObject); safecall;
    function  Get_DepthObject: IModelObject; safecall;
    function  Get_Sketch: ISketch; safecall;
    procedure Set_Body(const PVal: IKompasAPIObject); safecall;
    function  Get_Body: IKompasAPIObject; safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property CutType: ksHoleCutTypeEnum read Get_CutType write Set_CutType;
    property Diameter: Double read Get_Diameter write Set_Diameter;
    property Depth: Double read Get_Depth write Set_Depth;
    property BasePlane: IModelObject read Get_BasePlane write Set_BasePlane;
    property DepthObject: IModelObject read Get_DepthObject write Set_DepthObject;
    property Sketch: ISketch read Get_Sketch;
    property Body: IKompasAPIObject read Get_Body write Set_Body;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalHoleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3490B8B8-00D7-4BCF-AAD8-9487BF271084}
// *********************************************************************//
  ISheetMetalHoleDisp = dispinterface
    ['{3490B8B8-00D7-4BCF-AAD8-9487BF271084}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property CutType: ksHoleCutTypeEnum dispid 3;
    property Diameter: Double dispid 4;
    property Depth: Double dispid 5;
    property BasePlane: IModelObject dispid 6;
    property DepthObject: IModelObject dispid 7;
    property Sketch: ISketch readonly dispid 8;
    property Body: IKompasAPIObject dispid 9;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalCuts
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9515E4BB-7C60-4C3A-AF7A-847861E67B55}
// *********************************************************************//
  ISheetMetalCuts = interface(IModelObjects)
    ['{9515E4BB-7C60-4C3A-AF7A-847861E67B55}']
    function  Get_SheetMetalCut(Index: OleVariant): ISheetMetalCut; safecall;
    function  Add: ISheetMetalCut; safecall;
    property SheetMetalCut[Index: OleVariant]: ISheetMetalCut read Get_SheetMetalCut;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalCutsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9515E4BB-7C60-4C3A-AF7A-847861E67B55}
// *********************************************************************//
  ISheetMetalCutsDisp = dispinterface
    ['{9515E4BB-7C60-4C3A-AF7A-847861E67B55}']
    property SheetMetalCut[Index: OleVariant]: ISheetMetalCut readonly dispid 1;
    function  Add: ISheetMetalCut; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISheetMetalCut
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B50B1730-BACF-46F2-B10A-6CCDF4E4A2B1}
// *********************************************************************//
  ISheetMetalCut = interface(IModelObject)
    ['{B50B1730-BACF-46F2-B10A-6CCDF4E4A2B1}']
    procedure Set_Sketch(const Result: ISketch); safecall;
    function  Get_Sketch: ISketch; safecall;
    procedure Set_CutType(PVal: ksHoleCutTypeEnum); safecall;
    function  Get_CutType: ksHoleCutTypeEnum; safecall;
    procedure Set_Depth(PVal: Double); safecall;
    function  Get_Depth: Double; safecall;
    procedure Set_DepthObject(const PVal: IModelObject); safecall;
    function  Get_DepthObject: IModelObject; safecall;
    procedure Set_Cut(PVal: WordBool); safecall;
    function  Get_Cut: WordBool; safecall;
    procedure Set_Body(const PVal: IKompasAPIObject); safecall;
    function  Get_Body: IKompasAPIObject; safecall;
    property Sketch: ISketch read Get_Sketch write Set_Sketch;
    property CutType: ksHoleCutTypeEnum read Get_CutType write Set_CutType;
    property Depth: Double read Get_Depth write Set_Depth;
    property DepthObject: IModelObject read Get_DepthObject write Set_DepthObject;
    property Cut: WordBool read Get_Cut write Set_Cut;
    property Body: IKompasAPIObject read Get_Body write Set_Body;
  end;

// *********************************************************************//
// DispIntf:  ISheetMetalCutDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B50B1730-BACF-46F2-B10A-6CCDF4E4A2B1}
// *********************************************************************//
  ISheetMetalCutDisp = dispinterface
    ['{B50B1730-BACF-46F2-B10A-6CCDF4E4A2B1}']
    property Sketch: ISketch dispid 1;
    property CutType: ksHoleCutTypeEnum dispid 2;
    property Depth: Double dispid 3;
    property DepthObject: IModelObject dispid 4;
    property Cut: WordBool dispid 5;
    property Body: IKompasAPIObject dispid 6;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint3DParamDisplace
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6D57994F-C170-4CED-968A-6AD69C1A2C7D}
// *********************************************************************//
  IPoint3DParamDisplace = interface(IKompasAPIObject)
    ['{6D57994F-C170-4CED-968A-6AD69C1A2C7D}']
    procedure Set_DX(PVal: Double); safecall;
    function  Get_DX: Double; safecall;
    procedure Set_DY(PVal: Double); safecall;
    function  Get_DY: Double; safecall;
    procedure Set_DZ(PVal: Double); safecall;
    function  Get_DZ: Double; safecall;
    function  SetAssociationVertex(const NewVal: IModelObject): WordBool; safecall;
    function  Get_AssociationVertex: IModelObject; safecall;
    function  SetGuidingObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_GuidingObject: IModelObject; safecall;
    procedure Set_Distance(PVal: Double); safecall;
    function  Get_Distance: Double; safecall;
    property DX: Double read Get_DX write Set_DX;
    property DY: Double read Get_DY write Set_DY;
    property DZ: Double read Get_DZ write Set_DZ;
    property AssociationVertex: IModelObject read Get_AssociationVertex;
    property GuidingObject: IModelObject read Get_GuidingObject;
    property Distance: Double read Get_Distance write Set_Distance;
  end;

// *********************************************************************//
// DispIntf:  IPoint3DParamDisplaceDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6D57994F-C170-4CED-968A-6AD69C1A2C7D}
// *********************************************************************//
  IPoint3DParamDisplaceDisp = dispinterface
    ['{6D57994F-C170-4CED-968A-6AD69C1A2C7D}']
    property DX: Double dispid 1;
    property DY: Double dispid 2;
    property DZ: Double dispid 3;
    function  SetAssociationVertex(const NewVal: IModelObject): WordBool; dispid 4;
    property AssociationVertex: IModelObject readonly dispid 5;
    function  SetGuidingObject(const NewVal: IModelObject): WordBool; dispid 6;
    property GuidingObject: IModelObject readonly dispid 7;
    property Distance: Double dispid 8;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint3DParamIntersect
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C009F9ED-ED8A-4B1E-A4CE-156F43C3F6F3}
// *********************************************************************//
  IPoint3DParamIntersect = interface(IKompasAPIObject)
    ['{C009F9ED-ED8A-4B1E-A4CE-156F43C3F6F3}']
    function  SetCurveObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_CurveObject: IModelObject; safecall;
    function  SetSurfaceObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_SurfaceObject: IModelObject; safecall;
    function  Get_CartPointArray: OleVariant; safecall;
    procedure Set_Index(PVal: Integer); safecall;
    function  Get_Index: Integer; safecall;
    property CurveObject: IModelObject read Get_CurveObject;
    property SurfaceObject: IModelObject read Get_SurfaceObject;
    property CartPointArray: OleVariant read Get_CartPointArray;
    property Index: Integer read Get_Index write Set_Index;
  end;

// *********************************************************************//
// DispIntf:  IPoint3DParamIntersectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C009F9ED-ED8A-4B1E-A4CE-156F43C3F6F3}
// *********************************************************************//
  IPoint3DParamIntersectDisp = dispinterface
    ['{C009F9ED-ED8A-4B1E-A4CE-156F43C3F6F3}']
    function  SetCurveObject(const NewVal: IModelObject): WordBool; dispid 1;
    property CurveObject: IModelObject readonly dispid 2;
    function  SetSurfaceObject(const NewVal: IModelObject): WordBool; dispid 3;
    property SurfaceObject: IModelObject readonly dispid 4;
    property CartPointArray: OleVariant readonly dispid 5;
    property Index: Integer dispid 6;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint3DParamCenter
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A92F2938-F1D4-475E-AAB4-962FAA4A4366}
// *********************************************************************//
  IPoint3DParamCenter = interface(IKompasAPIObject)
    ['{A92F2938-F1D4-475E-AAB4-962FAA4A4366}']
    function  SetObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_Object_: IModelObject; safecall;
    property Object_: IModelObject read Get_Object_;
  end;

// *********************************************************************//
// DispIntf:  IPoint3DParamCenterDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A92F2938-F1D4-475E-AAB4-962FAA4A4366}
// *********************************************************************//
  IPoint3DParamCenterDisp = dispinterface
    ['{A92F2938-F1D4-475E-AAB4-962FAA4A4366}']
    function  SetObject(const NewVal: IModelObject): WordBool; dispid 1;
    property Object_: IModelObject readonly dispid 2;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint3DParamCurve
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {06B6BDA5-1DC6-4321-8B28-AC065D87E060}
// *********************************************************************//
  IPoint3DParamCurve = interface(IKompasAPIObject)
    ['{06B6BDA5-1DC6-4321-8B28-AC065D87E060}']
    function  SetCurveObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_CurveObject: IModelObject; safecall;
    procedure Set_OffsetType(PVal: ksPoint3DCurveParamTypeEnum); safecall;
    function  Get_OffsetType: ksPoint3DCurveParamTypeEnum; safecall;
    procedure Set_Offset(PVal: Double); safecall;
    function  Get_Offset: Double; safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    property CurveObject: IModelObject read Get_CurveObject;
    property OffsetType: ksPoint3DCurveParamTypeEnum read Get_OffsetType write Set_OffsetType;
    property Offset: Double read Get_Offset write Set_Offset;
    property Direction: WordBool read Get_Direction write Set_Direction;
  end;

// *********************************************************************//
// DispIntf:  IPoint3DParamCurveDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {06B6BDA5-1DC6-4321-8B28-AC065D87E060}
// *********************************************************************//
  IPoint3DParamCurveDisp = dispinterface
    ['{06B6BDA5-1DC6-4321-8B28-AC065D87E060}']
    function  SetCurveObject(const NewVal: IModelObject): WordBool; dispid 1;
    property CurveObject: IModelObject readonly dispid 2;
    property OffsetType: ksPoint3DCurveParamTypeEnum dispid 3;
    property Offset: Double dispid 4;
    property Direction: WordBool dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint3DParamSurface
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {18CE6BBE-63FB-4C94-8998-E40BC5B5D1C6}
// *********************************************************************//
  IPoint3DParamSurface = interface(IKompasAPIObject)
    ['{18CE6BBE-63FB-4C94-8998-E40BC5B5D1C6}']
    function  SetSurfaceObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_SurfaceObject: IModelObject; safecall;
    procedure Set_OffsetType(PVal: ksPoint3DSurfaceParamTypeEnum); safecall;
    function  Get_OffsetType: ksPoint3DSurfaceParamTypeEnum; safecall;
    procedure Set_Offset1(PVal: Double); safecall;
    function  Get_Offset1: Double; safecall;
    procedure Set_Offset2(PVal: Double); safecall;
    function  Get_Offset2: Double; safecall;
    function  SetObject1(const NewVal: IModelObject): WordBool; safecall;
    function  Get_Object1: IModelObject; safecall;
    function  SetObject2(const NewVal: IModelObject): WordBool; safecall;
    function  Get_Object2: IModelObject; safecall;
    property SurfaceObject: IModelObject read Get_SurfaceObject;
    property OffsetType: ksPoint3DSurfaceParamTypeEnum read Get_OffsetType write Set_OffsetType;
    property Offset1: Double read Get_Offset1 write Set_Offset1;
    property Offset2: Double read Get_Offset2 write Set_Offset2;
    property Object1: IModelObject read Get_Object1;
    property Object2: IModelObject read Get_Object2;
  end;

// *********************************************************************//
// DispIntf:  IPoint3DParamSurfaceDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {18CE6BBE-63FB-4C94-8998-E40BC5B5D1C6}
// *********************************************************************//
  IPoint3DParamSurfaceDisp = dispinterface
    ['{18CE6BBE-63FB-4C94-8998-E40BC5B5D1C6}']
    function  SetSurfaceObject(const NewVal: IModelObject): WordBool; dispid 1;
    property SurfaceObject: IModelObject readonly dispid 2;
    property OffsetType: ksPoint3DSurfaceParamTypeEnum dispid 3;
    property Offset1: Double dispid 4;
    property Offset2: Double dispid 5;
    function  SetObject1(const NewVal: IModelObject): WordBool; dispid 6;
    property Object1: IModelObject readonly dispid 7;
    function  SetObject2(const NewVal: IModelObject): WordBool; dispid 8;
    property Object2: IModelObject readonly dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint3DParamProjection
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B5D353DD-5F26-42FD-87D3-01C97C44E1BF}
// *********************************************************************//
  IPoint3DParamProjection = interface(IKompasAPIObject)
    ['{B5D353DD-5F26-42FD-87D3-01C97C44E1BF}']
    function  SetAssociationVertex(const NewVal: IModelObject): WordBool; safecall;
    function  Get_AssociationVertex: IModelObject; safecall;
    function  SetSurfaceObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_SurfaceObject: IModelObject; safecall;
    function  SetGuidingObject(const NewVal: IModelObject): WordBool; safecall;
    function  Get_GuidingObject: IModelObject; safecall;
    property AssociationVertex: IModelObject read Get_AssociationVertex;
    property SurfaceObject: IModelObject read Get_SurfaceObject;
    property GuidingObject: IModelObject read Get_GuidingObject;
  end;

// *********************************************************************//
// DispIntf:  IPoint3DParamProjectionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B5D353DD-5F26-42FD-87D3-01C97C44E1BF}
// *********************************************************************//
  IPoint3DParamProjectionDisp = dispinterface
    ['{B5D353DD-5F26-42FD-87D3-01C97C44E1BF}']
    function  SetAssociationVertex(const NewVal: IModelObject): WordBool; dispid 1;
    property AssociationVertex: IModelObject readonly dispid 2;
    function  SetSurfaceObject(const NewVal: IModelObject): WordBool; dispid 3;
    property SurfaceObject: IModelObject readonly dispid 4;
    function  SetGuidingObject(const NewVal: IModelObject): WordBool; dispid 5;
    property GuidingObject: IModelObject readonly dispid 6;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISourcePart7Params
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C9E03A9B-0A54-49AC-9397-8DE4465A8D1D}
// *********************************************************************//
  ISourcePart7Params = interface(IDispatch)
    ['{C9E03A9B-0A54-49AC-9397-8DE4465A8D1D}']
    function  Get_SourceName: WideString; safecall;
    procedure Set_SourceName(const PVal: WideString); safecall;
    function  Get_SourceMarking: WideString; safecall;
    procedure Set_SourceMarking(const PVal: WideString); safecall;
    function  Get_DocumentAuthor: WideString; safecall;
    procedure Set_DocumentAuthor(const PVal: WideString); safecall;
    function  Get_DocumentComment: OleVariant; safecall;
    procedure Set_DocumentComment(PVal: OleVariant); safecall;
    property SourceName: WideString read Get_SourceName write Set_SourceName;
    property SourceMarking: WideString read Get_SourceMarking write Set_SourceMarking;
    property DocumentAuthor: WideString read Get_DocumentAuthor write Set_DocumentAuthor;
    property DocumentComment: OleVariant read Get_DocumentComment write Set_DocumentComment;
  end;

// *********************************************************************//
// DispIntf:  ISourcePart7ParamsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C9E03A9B-0A54-49AC-9397-8DE4465A8D1D}
// *********************************************************************//
  ISourcePart7ParamsDisp = dispinterface
    ['{C9E03A9B-0A54-49AC-9397-8DE4465A8D1D}']
    property SourceName: WideString dispid 12001;
    property SourceMarking: WideString dispid 12002;
    property DocumentAuthor: WideString dispid 12003;
    property DocumentComment: OleVariant dispid 12004;
  end;

// *********************************************************************//
// Interface: ISymbols3DContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D695D345-7054-4BBD-8D36-8E1F5AEDC5ED}
// *********************************************************************//
  ISymbols3DContainer = interface(IDispatch)
    ['{D695D345-7054-4BBD-8D36-8E1F5AEDC5ED}']
    function  Get_LineDimensions3D: ILineDimensions3D; safecall;
    function  Get_RadialDimensions3D: IRadialDimensions3D; safecall;
    function  Get_DiametralDimensions3D: IDiametralDimensions3D; safecall;
    function  Get_AngleDimensions3D: IAngleDimensions3D; safecall;
    function  Get_Leaders3D: ILeaders3D; safecall;
    function  Get_Roughs3D: IRoughs3D; safecall;
    function  Get_Bases3D: IBases3D; safecall;
    function  Get_Tolerances3D: ITolerances3D; safecall;
    property LineDimensions3D: ILineDimensions3D read Get_LineDimensions3D;
    property RadialDimensions3D: IRadialDimensions3D read Get_RadialDimensions3D;
    property DiametralDimensions3D: IDiametralDimensions3D read Get_DiametralDimensions3D;
    property AngleDimensions3D: IAngleDimensions3D read Get_AngleDimensions3D;
    property Leaders3D: ILeaders3D read Get_Leaders3D;
    property Roughs3D: IRoughs3D read Get_Roughs3D;
    property Bases3D: IBases3D read Get_Bases3D;
    property Tolerances3D: ITolerances3D read Get_Tolerances3D;
  end;

// *********************************************************************//
// DispIntf:  ISymbols3DContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D695D345-7054-4BBD-8D36-8E1F5AEDC5ED}
// *********************************************************************//
  ISymbols3DContainerDisp = dispinterface
    ['{D695D345-7054-4BBD-8D36-8E1F5AEDC5ED}']
    property LineDimensions3D: ILineDimensions3D readonly dispid 13001;
    property RadialDimensions3D: IRadialDimensions3D readonly dispid 13002;
    property DiametralDimensions3D: IDiametralDimensions3D readonly dispid 13003;
    property AngleDimensions3D: IAngleDimensions3D readonly dispid 13004;
    property Leaders3D: ILeaders3D readonly dispid 13005;
    property Roughs3D: IRoughs3D readonly dispid 13006;
    property Bases3D: IBases3D readonly dispid 13007;
    property Tolerances3D: ITolerances3D readonly dispid 13008;
  end;

// *********************************************************************//
// Interface: ILineDimensions3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8E30C80C-4C79-497B-A74B-84D44F96EF4D}
// *********************************************************************//
  ILineDimensions3D = interface(IModelObjects)
    ['{8E30C80C-4C79-497B-A74B-84D44F96EF4D}']
    function  Get_LineDimension3D(Index: OleVariant): IBaseLineDimension3D; safecall;
    function  Add(DimType: ksObj3dTypeEnum): IBaseLineDimension3D; safecall;
    property LineDimension3D[Index: OleVariant]: IBaseLineDimension3D read Get_LineDimension3D;
  end;

// *********************************************************************//
// DispIntf:  ILineDimensions3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8E30C80C-4C79-497B-A74B-84D44F96EF4D}
// *********************************************************************//
  ILineDimensions3DDisp = dispinterface
    ['{8E30C80C-4C79-497B-A74B-84D44F96EF4D}']
    property LineDimension3D[Index: OleVariant]: IBaseLineDimension3D readonly dispid 1;
    function  Add(DimType: ksObj3dTypeEnum): IBaseLineDimension3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBaseLineDimension3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3514887E-321B-4CE3-A966-3EB1A02CEEF2}
// *********************************************************************//
  IBaseLineDimension3D = interface(IModelObject)
    ['{3514887E-321B-4CE3-A966-3EB1A02CEEF2}']
    function  Get_Length: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Object1: IModelObject; safecall;
    procedure Set_Object1(const Object1: IModelObject); safecall;
    function  Get_Object2: IModelObject; safecall;
    procedure Set_Object2(const Object2: IModelObject); safecall;
    property Length: Double read Get_Length write Set_Length;
    property Object1: IModelObject read Get_Object1 write Set_Object1;
    property Object2: IModelObject read Get_Object2 write Set_Object2;
  end;

// *********************************************************************//
// DispIntf:  IBaseLineDimension3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3514887E-321B-4CE3-A966-3EB1A02CEEF2}
// *********************************************************************//
  IBaseLineDimension3DDisp = dispinterface
    ['{3514887E-321B-4CE3-A966-3EB1A02CEEF2}']
    property Length: Double dispid 1;
    property Object1: IModelObject dispid 2;
    property Object2: IModelObject dispid 3;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRadialDimensions3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {153924CD-E046-4334-8798-46A6D6663DE4}
// *********************************************************************//
  IRadialDimensions3D = interface(IModelObjects)
    ['{153924CD-E046-4334-8798-46A6D6663DE4}']
    function  Get_RadialDimension3D(Index: OleVariant): IRadialDimension3D; safecall;
    function  Add: IRadialDimension3D; safecall;
    property RadialDimension3D[Index: OleVariant]: IRadialDimension3D read Get_RadialDimension3D;
  end;

// *********************************************************************//
// DispIntf:  IRadialDimensions3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {153924CD-E046-4334-8798-46A6D6663DE4}
// *********************************************************************//
  IRadialDimensions3DDisp = dispinterface
    ['{153924CD-E046-4334-8798-46A6D6663DE4}']
    property RadialDimension3D[Index: OleVariant]: IRadialDimension3D readonly dispid 1;
    function  Add: IRadialDimension3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRadialDimension3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5711B871-1FAE-425C-898E-583442D851CD}
// *********************************************************************//
  IRadialDimension3D = interface(IModelObject)
    ['{5711B871-1FAE-425C-898E-583442D851CD}']
    function  Get_Object1: IModelObject; safecall;
    procedure Set_Object1(const Object1: IModelObject); safecall;
    function  Get_PlaneObject: IModelObject; safecall;
    procedure Set_PlaneObject(const Object_: IModelObject); safecall;
    function  Get_DimensionType: WordBool; safecall;
    procedure Set_DimensionType(PVal: WordBool); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  GetSurfacePoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetSurfacePoint(X: Double; Y: Double; Z: Double): WordBool; safecall;
    function  GetCenterPoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetCenterPoint(X: Double; Y: Double; Z: Double): WordBool; safecall;
    property Object1: IModelObject read Get_Object1 write Set_Object1;
    property PlaneObject: IModelObject read Get_PlaneObject write Set_PlaneObject;
    property DimensionType: WordBool read Get_DimensionType write Set_DimensionType;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  IRadialDimension3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5711B871-1FAE-425C-898E-583442D851CD}
// *********************************************************************//
  IRadialDimension3DDisp = dispinterface
    ['{5711B871-1FAE-425C-898E-583442D851CD}']
    property Object1: IModelObject dispid 1;
    property PlaneObject: IModelObject dispid 2;
    property DimensionType: WordBool dispid 3;
    property Angle: Double dispid 4;
    function  GetSurfacePoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 5;
    function  SetSurfacePoint(X: Double; Y: Double; Z: Double): WordBool; dispid 6;
    function  GetCenterPoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 7;
    function  SetCenterPoint(X: Double; Y: Double; Z: Double): WordBool; dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDiametralDimensions3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {79B5AC3B-9B2F-4C75-8482-3C0D6B07D911}
// *********************************************************************//
  IDiametralDimensions3D = interface(IModelObjects)
    ['{79B5AC3B-9B2F-4C75-8482-3C0D6B07D911}']
    function  Get_DiametralDimension3D(Index: OleVariant): IDiametralDimension3D; safecall;
    function  Add: IDiametralDimension3D; safecall;
    property DiametralDimension3D[Index: OleVariant]: IDiametralDimension3D read Get_DiametralDimension3D;
  end;

// *********************************************************************//
// DispIntf:  IDiametralDimensions3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {79B5AC3B-9B2F-4C75-8482-3C0D6B07D911}
// *********************************************************************//
  IDiametralDimensions3DDisp = dispinterface
    ['{79B5AC3B-9B2F-4C75-8482-3C0D6B07D911}']
    property DiametralDimension3D[Index: OleVariant]: IDiametralDimension3D readonly dispid 1;
    function  Add: IDiametralDimension3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDiametralDimension3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {261AE065-69B8-4B42-B103-C8746720C5BF}
// *********************************************************************//
  IDiametralDimension3D = interface(IModelObject)
    ['{261AE065-69B8-4B42-B103-C8746720C5BF}']
    function  Get_Object1: IModelObject; safecall;
    procedure Set_Object1(const Object1: IModelObject); safecall;
    function  Get_PlaneObject: IModelObject; safecall;
    procedure Set_PlaneObject(const Object2: IModelObject); safecall;
    function  Get_DimensionType: WordBool; safecall;
    procedure Set_DimensionType(PVal: WordBool); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  GetSurfacePoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetSurfacePoint(X: Double; Y: Double; Z: Double): WordBool; safecall;
    function  GetCenterPoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetCenterPoint(X: Double; Y: Double; Z: Double): WordBool; safecall;
    property Object1: IModelObject read Get_Object1 write Set_Object1;
    property PlaneObject: IModelObject read Get_PlaneObject write Set_PlaneObject;
    property DimensionType: WordBool read Get_DimensionType write Set_DimensionType;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  IDiametralDimension3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {261AE065-69B8-4B42-B103-C8746720C5BF}
// *********************************************************************//
  IDiametralDimension3DDisp = dispinterface
    ['{261AE065-69B8-4B42-B103-C8746720C5BF}']
    property Object1: IModelObject dispid 1;
    property PlaneObject: IModelObject dispid 2;
    property DimensionType: WordBool dispid 3;
    property Angle: Double dispid 4;
    function  GetSurfacePoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 5;
    function  SetSurfacePoint(X: Double; Y: Double; Z: Double): WordBool; dispid 6;
    function  GetCenterPoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 7;
    function  SetCenterPoint(X: Double; Y: Double; Z: Double): WordBool; dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAngleDimensions3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E0E8DB05-F71B-457E-BFEB-7EC2E803E77A}
// *********************************************************************//
  IAngleDimensions3D = interface(IModelObjects)
    ['{E0E8DB05-F71B-457E-BFEB-7EC2E803E77A}']
    function  Get_AngleDimension3D(Index: OleVariant): IAngleDimension3D; safecall;
    function  Add: IAngleDimension3D; safecall;
    property AngleDimension3D[Index: OleVariant]: IAngleDimension3D read Get_AngleDimension3D;
  end;

// *********************************************************************//
// DispIntf:  IAngleDimensions3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E0E8DB05-F71B-457E-BFEB-7EC2E803E77A}
// *********************************************************************//
  IAngleDimensions3DDisp = dispinterface
    ['{E0E8DB05-F71B-457E-BFEB-7EC2E803E77A}']
    property AngleDimension3D[Index: OleVariant]: IAngleDimension3D readonly dispid 1;
    function  Add: IAngleDimension3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAngleDimension3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C22870B5-F002-4C76-9E67-46854E938824}
// *********************************************************************//
  IAngleDimension3D = interface(IModelObject)
    ['{C22870B5-F002-4C76-9E67-46854E938824}']
    function  Get_Object1: IModelObject; safecall;
    procedure Set_Object1(const Object1: IModelObject); safecall;
    function  Get_Object2: IModelObject; safecall;
    procedure Set_Object2(const Object2: IModelObject); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_DimensionType: ksAngleDimTypeEnum; safecall;
    procedure Set_DimensionType(PVal: ksAngleDimTypeEnum); safecall;
    function  Inverse: WordBool; safecall;
    function  GetCenterPoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetCenterPoint(X: Double; Y: Double; Z: Double): WordBool; safecall;
    property Object1: IModelObject read Get_Object1 write Set_Object1;
    property Object2: IModelObject read Get_Object2 write Set_Object2;
    property Length: Double read Get_Length write Set_Length;
    property DimensionType: ksAngleDimTypeEnum read Get_DimensionType write Set_DimensionType;
  end;

// *********************************************************************//
// DispIntf:  IAngleDimension3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C22870B5-F002-4C76-9E67-46854E938824}
// *********************************************************************//
  IAngleDimension3DDisp = dispinterface
    ['{C22870B5-F002-4C76-9E67-46854E938824}']
    property Object1: IModelObject dispid 1;
    property Object2: IModelObject dispid 2;
    property Length: Double dispid 3;
    property DimensionType: ksAngleDimTypeEnum dispid 4;
    function  Inverse: WordBool; dispid 5;
    function  GetCenterPoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 6;
    function  SetCenterPoint(X: Double; Y: Double; Z: Double): WordBool; dispid 7;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILeaders3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C6E6BDD4-2B0E-49BF-87D3-04E800200DDC}
// *********************************************************************//
  ILeaders3D = interface(IModelObjects)
    ['{C6E6BDD4-2B0E-49BF-87D3-04E800200DDC}']
    function  Get_Leader3D(Index: OleVariant): IBaseLeader3D; safecall;
    function  Add(DimType: ksObj3dTypeEnum): IBaseLeader3D; safecall;
    property Leader3D[Index: OleVariant]: IBaseLeader3D read Get_Leader3D;
  end;

// *********************************************************************//
// DispIntf:  ILeaders3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C6E6BDD4-2B0E-49BF-87D3-04E800200DDC}
// *********************************************************************//
  ILeaders3DDisp = dispinterface
    ['{C6E6BDD4-2B0E-49BF-87D3-04E800200DDC}']
    property Leader3D[Index: OleVariant]: IBaseLeader3D readonly dispid 1;
    function  Add(DimType: ksObj3dTypeEnum): IBaseLeader3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBaseLeader3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7170F38E-8230-4C9C-B36B-0BACBB27B123}
// *********************************************************************//
  IBaseLeader3D = interface(IModelObject)
    ['{7170F38E-8230-4C9C-B36B-0BACBB27B123}']
    function  Get_BasePlane: ksObj3dTypeEnum; safecall;
    procedure Set_BasePlane(Val: ksObj3dTypeEnum); safecall;
    function  Get_PositionObject: IModelObject; safecall;
    procedure Set_PositionObject(const Val: IModelObject); safecall;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; safecall;
    function  Get_ArrowType: ksArrowEnum; safecall;
    procedure Set_ArrowType(Result: ksArrowEnum); safecall;
    property BasePlane: ksObj3dTypeEnum read Get_BasePlane write Set_BasePlane;
    property PositionObject: IModelObject read Get_PositionObject write Set_PositionObject;
    property ArrowType: ksArrowEnum read Get_ArrowType write Set_ArrowType;
  end;

// *********************************************************************//
// DispIntf:  IBaseLeader3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7170F38E-8230-4C9C-B36B-0BACBB27B123}
// *********************************************************************//
  IBaseLeader3DDisp = dispinterface
    ['{7170F38E-8230-4C9C-B36B-0BACBB27B123}']
    property BasePlane: ksObj3dTypeEnum dispid 1;
    property PositionObject: IModelObject dispid 2;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; dispid 4;
    property ArrowType: ksArrowEnum dispid 5;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRoughs3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8533772B-1C43-4FDD-9F0E-BC92F15862C9}
// *********************************************************************//
  IRoughs3D = interface(IModelObjects)
    ['{8533772B-1C43-4FDD-9F0E-BC92F15862C9}']
    function  Get_Rough3D(Index: OleVariant): IRough3D; safecall;
    function  Add: IRough3D; safecall;
    property Rough3D[Index: OleVariant]: IRough3D read Get_Rough3D;
  end;

// *********************************************************************//
// DispIntf:  IRoughs3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8533772B-1C43-4FDD-9F0E-BC92F15862C9}
// *********************************************************************//
  IRoughs3DDisp = dispinterface
    ['{8533772B-1C43-4FDD-9F0E-BC92F15862C9}']
    property Rough3D[Index: OleVariant]: IRough3D readonly dispid 1;
    function  Add: IRough3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRough3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {083A4984-199E-4591-8FC3-CB8A9D7D4303}
// *********************************************************************//
  IRough3D = interface(IModelObject)
    ['{083A4984-199E-4591-8FC3-CB8A9D7D4303}']
    function  Get_BasePlane: ksObj3dTypeEnum; safecall;
    procedure Set_BasePlane(Val: ksObj3dTypeEnum); safecall;
    function  Get_PositionObject: IModelObject; safecall;
    procedure Set_PositionObject(const Val: IModelObject); safecall;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; safecall;
    function  Get_BaseObject: IModelObject; safecall;
    function  GetBasePosition(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetBasePosition(X: Double; Y: Double; Z: Double; const Object_: IModelObject): WordBool; safecall;
    function  GetShelfPosition(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetShelfPosition(X: Double; Y: Double; Z: Double): WordBool; safecall;
    property BasePlane: ksObj3dTypeEnum read Get_BasePlane write Set_BasePlane;
    property PositionObject: IModelObject read Get_PositionObject write Set_PositionObject;
    property BaseObject: IModelObject read Get_BaseObject;
  end;

// *********************************************************************//
// DispIntf:  IRough3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {083A4984-199E-4591-8FC3-CB8A9D7D4303}
// *********************************************************************//
  IRough3DDisp = dispinterface
    ['{083A4984-199E-4591-8FC3-CB8A9D7D4303}']
    property BasePlane: ksObj3dTypeEnum dispid 1;
    property PositionObject: IModelObject dispid 2;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; dispid 4;
    property BaseObject: IModelObject readonly dispid 5;
    function  GetBasePosition(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 6;
    function  SetBasePosition(X: Double; Y: Double; Z: Double; const Object_: IModelObject): WordBool; dispid 7;
    function  GetShelfPosition(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 8;
    function  SetShelfPosition(X: Double; Y: Double; Z: Double): WordBool; dispid 9;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBases3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8BC582B3-1F82-4D19-AF95-24CBAD412E52}
// *********************************************************************//
  IBases3D = interface(IModelObjects)
    ['{8BC582B3-1F82-4D19-AF95-24CBAD412E52}']
    function  Get_Base3D(Index: OleVariant): IBase3D; safecall;
    function  Add: IBase3D; safecall;
    property Base3D[Index: OleVariant]: IBase3D read Get_Base3D;
  end;

// *********************************************************************//
// DispIntf:  IBases3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8BC582B3-1F82-4D19-AF95-24CBAD412E52}
// *********************************************************************//
  IBases3DDisp = dispinterface
    ['{8BC582B3-1F82-4D19-AF95-24CBAD412E52}']
    property Base3D[Index: OleVariant]: IBase3D readonly dispid 1;
    function  Add: IBase3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBase3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D5B737F6-FD3D-49F8-B3D8-C8475E5E3D3A}
// *********************************************************************//
  IBase3D = interface(IModelObject)
    ['{D5B737F6-FD3D-49F8-B3D8-C8475E5E3D3A}']
    function  Get_BasePlane: ksObj3dTypeEnum; safecall;
    procedure Set_BasePlane(Val: ksObj3dTypeEnum); safecall;
    function  Get_PositionObject: IModelObject; safecall;
    procedure Set_PositionObject(const Val: IModelObject); safecall;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; safecall;
    function  Get_BaseObject: IModelObject; safecall;
    function  Get_DrawType: WordBool; safecall;
    procedure Set_DrawType(Result: WordBool); safecall;
    function  Get_AutoSorted: WordBool; safecall;
    procedure Set_AutoSorted(Result: WordBool); safecall;
    function  Get_Text: IText; safecall;
    function  GetBranchBeginPoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetBranchBeginPoint(X: Double; Y: Double; Z: Double; const Object_: IModelObject): WordBool; safecall;
    function  GetBranchEndPoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetBranchEndPoint(X: Double; Y: Double; Z: Double): WordBool; safecall;
    property BasePlane: ksObj3dTypeEnum read Get_BasePlane write Set_BasePlane;
    property PositionObject: IModelObject read Get_PositionObject write Set_PositionObject;
    property BaseObject: IModelObject read Get_BaseObject;
    property DrawType: WordBool read Get_DrawType write Set_DrawType;
    property AutoSorted: WordBool read Get_AutoSorted write Set_AutoSorted;
    property Text: IText read Get_Text;
  end;

// *********************************************************************//
// DispIntf:  IBase3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D5B737F6-FD3D-49F8-B3D8-C8475E5E3D3A}
// *********************************************************************//
  IBase3DDisp = dispinterface
    ['{D5B737F6-FD3D-49F8-B3D8-C8475E5E3D3A}']
    property BasePlane: ksObj3dTypeEnum dispid 1;
    property PositionObject: IModelObject dispid 2;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; dispid 4;
    property BaseObject: IModelObject readonly dispid 5;
    property DrawType: WordBool dispid 6;
    property AutoSorted: WordBool dispid 7;
    property Text: IText readonly dispid 8;
    function  GetBranchBeginPoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 9;
    function  SetBranchBeginPoint(X: Double; Y: Double; Z: Double; const Object_: IModelObject): WordBool; dispid 10;
    function  GetBranchEndPoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 11;
    function  SetBranchEndPoint(X: Double; Y: Double; Z: Double): WordBool; dispid 12;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITolerances3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {82ADDA0C-B8DE-4336-A5CC-B36504A80E2D}
// *********************************************************************//
  ITolerances3D = interface(IModelObjects)
    ['{82ADDA0C-B8DE-4336-A5CC-B36504A80E2D}']
    function  Get_Tolerance3D(Index: OleVariant): ITolerance3D; safecall;
    function  Add: ITolerance3D; safecall;
    property Tolerance3D[Index: OleVariant]: ITolerance3D read Get_Tolerance3D;
  end;

// *********************************************************************//
// DispIntf:  ITolerances3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {82ADDA0C-B8DE-4336-A5CC-B36504A80E2D}
// *********************************************************************//
  ITolerances3DDisp = dispinterface
    ['{82ADDA0C-B8DE-4336-A5CC-B36504A80E2D}']
    property Tolerance3D[Index: OleVariant]: ITolerance3D readonly dispid 1;
    function  Add: ITolerance3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITolerance3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9CF700CF-72DB-44EB-A191-3814A3CC21BD}
// *********************************************************************//
  ITolerance3D = interface(IModelObject)
    ['{9CF700CF-72DB-44EB-A191-3814A3CC21BD}']
    function  Get_BasePlane: ksObj3dTypeEnum; safecall;
    procedure Set_BasePlane(Val: ksObj3dTypeEnum); safecall;
    function  Get_PositionObject: IModelObject; safecall;
    procedure Set_PositionObject(const Val: IModelObject); safecall;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; safecall;
    function  Get_ArrowType(Index: Integer): WordBool; safecall;
    procedure Set_ArrowType(Index: Integer; Result: WordBool); safecall;
    property BasePlane: ksObj3dTypeEnum read Get_BasePlane write Set_BasePlane;
    property PositionObject: IModelObject read Get_PositionObject write Set_PositionObject;
    property ArrowType[Index: Integer]: WordBool read Get_ArrowType write Set_ArrowType;
  end;

// *********************************************************************//
// DispIntf:  ITolerance3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9CF700CF-72DB-44EB-A191-3814A3CC21BD}
// *********************************************************************//
  ITolerance3DDisp = dispinterface
    ['{9CF700CF-72DB-44EB-A191-3814A3CC21BD}']
    property BasePlane: ksObj3dTypeEnum dispid 1;
    property PositionObject: IModelObject dispid 2;
    function  GetPosition(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 3;
    function  SetPosition(X: Double; Y: Double; Z: Double): WordBool; dispid 4;
    property ArrowType[Index: Integer]: WordBool dispid 5;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILineDimension3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F38E986B-9CC0-4492-B850-180D3A6AF713}
// *********************************************************************//
  ILineDimension3D = interface(IBaseLineDimension3D)
    ['{F38E986B-9CC0-4492-B850-180D3A6AF713}']
    function  Get_Plane: IModelObject; safecall;
    procedure Set_Plane(const Plane: IModelObject); safecall;
    property Plane: IModelObject read Get_Plane write Set_Plane;
  end;

// *********************************************************************//
// DispIntf:  ILineDimension3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F38E986B-9CC0-4492-B850-180D3A6AF713}
// *********************************************************************//
  ILineDimension3DDisp = dispinterface
    ['{F38E986B-9CC0-4492-B850-180D3A6AF713}']
    property Plane: IModelObject dispid 101;
    property Length: Double dispid 1;
    property Object1: IModelObject dispid 2;
    property Object2: IModelObject dispid 3;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICurveVertexParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2AD2E4B4-B870-437A-8D57-5807729FCB05}
// *********************************************************************//
  ICurveVertexParam = interface(IKompasAPIObject)
    ['{2AD2E4B4-B870-437A-8D57-5807729FCB05}']
    procedure Set_BuildingType(Result: ksLineBuildingType); safecall;
    function  Get_BuildingType: ksLineBuildingType; safecall;
    procedure Set_BuildingObject(const Result: IModelObject); safecall;
    function  Get_BuildingObject: IModelObject; safecall;
    procedure Set_AssociationVertex(const Result: IModelObject); safecall;
    function  Get_AssociationVertex: IModelObject; safecall;
    function  Get_Vertex: IModelObject; safecall;
    function  Get_Index: SYSINT; safecall;
    function  Get_PointParameters: IKompasAPIObject; safecall;
    procedure Set_PointType(Result: ksPoint3DTypeEnum); safecall;
    function  Get_PointType: ksPoint3DTypeEnum; safecall;
    function  GetParamVertex(out X: Double; out Y: Double; out Z: Double; out Value: Double): WordBool; safecall;
    function  SetParamVertex(X: Double; Y: Double; Z: Double; Value: Double): WordBool; safecall;
    function  SetParamByVertex(const Obj: IModelObject; Value: Double): WordBool; safecall;
    function  GetParamByDistance(out Distance: Double; out Value: Double): WordBool; safecall;
    function  SetParamByDistance(Distance: Double; Value: Double): WordBool; safecall;
    property BuildingType: ksLineBuildingType read Get_BuildingType write Set_BuildingType;
    property BuildingObject: IModelObject read Get_BuildingObject write Set_BuildingObject;
    property AssociationVertex: IModelObject read Get_AssociationVertex write Set_AssociationVertex;
    property Vertex: IModelObject read Get_Vertex;
    property Index: SYSINT read Get_Index;
    property PointParameters: IKompasAPIObject read Get_PointParameters;
    property PointType: ksPoint3DTypeEnum read Get_PointType write Set_PointType;
  end;

// *********************************************************************//
// DispIntf:  ICurveVertexParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2AD2E4B4-B870-437A-8D57-5807729FCB05}
// *********************************************************************//
  ICurveVertexParamDisp = dispinterface
    ['{2AD2E4B4-B870-437A-8D57-5807729FCB05}']
    property BuildingType: ksLineBuildingType dispid 1;
    property BuildingObject: IModelObject dispid 2;
    property AssociationVertex: IModelObject dispid 3;
    property Vertex: IModelObject readonly dispid 4;
    property Index: SYSINT readonly dispid 5;
    property PointParameters: IKompasAPIObject readonly dispid 6;
    property PointType: ksPoint3DTypeEnum dispid 7;
    function  GetParamVertex(out X: Double; out Y: Double; out Z: Double; out Value: Double): WordBool; dispid 8;
    function  SetParamVertex(X: Double; Y: Double; Z: Double; Value: Double): WordBool; dispid 9;
    function  SetParamByVertex(const Obj: IModelObject; Value: Double): WordBool; dispid 10;
    function  GetParamByDistance(out Distance: Double; out Value: Double): WordBool; dispid 11;
    function  SetParamByDistance(Distance: Double; Value: Double): WordBool; dispid 12;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISplines3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C4BC0839-932F-4DBC-9A84-5D1FE8927351}
// *********************************************************************//
  ISplines3D = interface(IModelObjects)
    ['{C4BC0839-932F-4DBC-9A84-5D1FE8927351}']
    function  Get_Spline3D(Index: OleVariant): ISpline3D; safecall;
    function  Add: ISpline3D; safecall;
    function  Convert(Objects: OleVariant): OleVariant; safecall;
    property Spline3D[Index: OleVariant]: ISpline3D read Get_Spline3D;
  end;

// *********************************************************************//
// DispIntf:  ISplines3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C4BC0839-932F-4DBC-9A84-5D1FE8927351}
// *********************************************************************//
  ISplines3DDisp = dispinterface
    ['{C4BC0839-932F-4DBC-9A84-5D1FE8927351}']
    property Spline3D[Index: OleVariant]: ISpline3D readonly dispid 1;
    function  Add: ISpline3D; dispid 2;
    function  Convert(Objects: OleVariant): OleVariant; dispid 3;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISpline3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4D0940A0-6A4A-4CE8-A08A-EA0A4AE91942}
// *********************************************************************//
  ISpline3D = interface(IModelObject)
    ['{4D0940A0-6A4A-4CE8-A08A-EA0A4AE91942}']
    procedure Set_Closed(Result: WordBool); safecall;
    function  Get_Closed: WordBool; safecall;
    procedure Set_SplineOnPoles(Result: WordBool); safecall;
    function  Get_SplineOnPoles: WordBool; safecall;
    procedure Set_SplineOrder(Result: Integer); safecall;
    function  Get_SplineOrder: Integer; safecall;
    function  Get_VertexCount: Integer; safecall;
    function  Get_VertexParams(Index: Integer): ICurveVertexParam; safecall;
    function  AddVertex(Index: Integer): ICurveVertexParam; safecall;
    function  DeleteVertex(Index: Integer): WordBool; safecall;
    function  Flush: WordBool; safecall;
    function  ReadFromFile(const FileName: WideString): WordBool; safecall;
    function  WriteToFile(const FileName: WideString): WordBool; safecall;
    function  Get_VertexParamsArray: OleVariant; safecall;
    function  GetVertexCoordinatesArray(out Coordinates: OleVariant; out Weights: OleVariant): WordBool; safecall;
    procedure Set_Knots(PVal: OleVariant); safecall;
    function  Get_Knots: OleVariant; safecall;
    property Closed: WordBool read Get_Closed write Set_Closed;
    property SplineOnPoles: WordBool read Get_SplineOnPoles write Set_SplineOnPoles;
    property SplineOrder: Integer read Get_SplineOrder write Set_SplineOrder;
    property VertexCount: Integer read Get_VertexCount;
    property VertexParams[Index: Integer]: ICurveVertexParam read Get_VertexParams;
    property VertexParamsArray: OleVariant read Get_VertexParamsArray;
    property Knots: OleVariant read Get_Knots write Set_Knots;
  end;

// *********************************************************************//
// DispIntf:  ISpline3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4D0940A0-6A4A-4CE8-A08A-EA0A4AE91942}
// *********************************************************************//
  ISpline3DDisp = dispinterface
    ['{4D0940A0-6A4A-4CE8-A08A-EA0A4AE91942}']
    property Closed: WordBool dispid 1;
    property SplineOnPoles: WordBool dispid 2;
    property SplineOrder: Integer dispid 3;
    property VertexCount: Integer readonly dispid 4;
    property VertexParams[Index: Integer]: ICurveVertexParam readonly dispid 5;
    function  AddVertex(Index: Integer): ICurveVertexParam; dispid 6;
    function  DeleteVertex(Index: Integer): WordBool; dispid 7;
    function  Flush: WordBool; dispid 8;
    function  ReadFromFile(const FileName: WideString): WordBool; dispid 9;
    function  WriteToFile(const FileName: WideString): WordBool; dispid 10;
    property VertexParamsArray: OleVariant readonly dispid 11;
    function  GetVertexCoordinatesArray(out Coordinates: OleVariant; out Weights: OleVariant): WordBool; dispid 12;
    property Knots: OleVariant dispid 13;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILocalCoordinateSystems
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CC04CBF6-F0D4-456E-903A-C0B0D3551368}
// *********************************************************************//
  ILocalCoordinateSystems = interface(IModelObjects)
    ['{CC04CBF6-F0D4-456E-903A-C0B0D3551368}']
    function  Get_LocalCoordinateSystem(Index: OleVariant): ILocalCoordinateSystem; safecall;
    function  Add: ILocalCoordinateSystem; safecall;
    function  Get_Current: IModelObject; safecall;
    function  SetCurrent(const Object_: ILocalCoordinateSystem): WordBool; safecall;
    property LocalCoordinateSystem[Index: OleVariant]: ILocalCoordinateSystem read Get_LocalCoordinateSystem;
    property Current: IModelObject read Get_Current;
  end;

// *********************************************************************//
// DispIntf:  ILocalCoordinateSystemsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CC04CBF6-F0D4-456E-903A-C0B0D3551368}
// *********************************************************************//
  ILocalCoordinateSystemsDisp = dispinterface
    ['{CC04CBF6-F0D4-456E-903A-C0B0D3551368}']
    property LocalCoordinateSystem[Index: OleVariant]: ILocalCoordinateSystem readonly dispid 1;
    function  Add: ILocalCoordinateSystem; dispid 2;
    property Current: IModelObject readonly dispid 3;
    function  SetCurrent(const Object_: ILocalCoordinateSystem): WordBool; dispid 4;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAuxiliaryGeomContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {950FEBE2-F916-4E77-A37D-B061E5C22FA8}
// *********************************************************************//
  IAuxiliaryGeomContainer = interface(IDispatch)
    ['{950FEBE2-F916-4E77-A37D-B061E5C22FA8}']
    function  Get_LocalCoordinateSystems: ILocalCoordinateSystems; safecall;
    function  Get_Splines3D: ISplines3D; safecall;
    function  Get_PolyLines: IPolyLines; safecall;
    function  Get_ControlPoints: IControlPoints; safecall;
    function  Get_ConjunctivePoints: IConjunctivePoints; safecall;
    function  Get_SplitLines: ISplitLines; safecall;
    function  Get_SurfacesIntersectionCurves: ISurfacesIntersectionCurves; safecall;
    function  Get_Equidistants3D: IEquidistants3D; safecall;
    property LocalCoordinateSystems: ILocalCoordinateSystems read Get_LocalCoordinateSystems;
    property Splines3D: ISplines3D read Get_Splines3D;
    property PolyLines: IPolyLines read Get_PolyLines;
    property ControlPoints: IControlPoints read Get_ControlPoints;
    property ConjunctivePoints: IConjunctivePoints read Get_ConjunctivePoints;
    property SplitLines: ISplitLines read Get_SplitLines;
    property SurfacesIntersectionCurves: ISurfacesIntersectionCurves read Get_SurfacesIntersectionCurves;
    property Equidistants3D: IEquidistants3D read Get_Equidistants3D;
  end;

// *********************************************************************//
// DispIntf:  IAuxiliaryGeomContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {950FEBE2-F916-4E77-A37D-B061E5C22FA8}
// *********************************************************************//
  IAuxiliaryGeomContainerDisp = dispinterface
    ['{950FEBE2-F916-4E77-A37D-B061E5C22FA8}']
    property LocalCoordinateSystems: ILocalCoordinateSystems readonly dispid 14001;
    property Splines3D: ISplines3D readonly dispid 14002;
    property PolyLines: IPolyLines readonly dispid 14003;
    property ControlPoints: IControlPoints readonly dispid 14004;
    property ConjunctivePoints: IConjunctivePoints readonly dispid 14005;
    property SplitLines: ISplitLines readonly dispid 14006;
    property SurfacesIntersectionCurves: ISurfacesIntersectionCurves readonly dispid 14007;
    property Equidistants3D: IEquidistants3D readonly dispid 14008;
  end;

// *********************************************************************//
// Interface: IPolyLines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0CF9B989-29F8-495F-9DDA-8C2CAD840BB6}
// *********************************************************************//
  IPolyLines = interface(IModelObjects)
    ['{0CF9B989-29F8-495F-9DDA-8C2CAD840BB6}']
    function  Get_PolyLine(Index: OleVariant): IPolyLine; safecall;
    function  Add: IPolyLine; safecall;
    property PolyLine[Index: OleVariant]: IPolyLine read Get_PolyLine;
  end;

// *********************************************************************//
// DispIntf:  IPolyLinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0CF9B989-29F8-495F-9DDA-8C2CAD840BB6}
// *********************************************************************//
  IPolyLinesDisp = dispinterface
    ['{0CF9B989-29F8-495F-9DDA-8C2CAD840BB6}']
    property PolyLine[Index: OleVariant]: IPolyLine readonly dispid 1;
    function  Add: IPolyLine; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPolyLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6CE7843D-9AFA-48FF-B444-61CDF036D118}
// *********************************************************************//
  IPolyLine = interface(IModelObject)
    ['{6CE7843D-9AFA-48FF-B444-61CDF036D118}']
    procedure Set_Closed(Result: WordBool); safecall;
    function  Get_Closed: WordBool; safecall;
    procedure Set_VertexVisible(Result: WordBool); safecall;
    function  Get_VertexVisible: WordBool; safecall;
    function  Get_VertexCount: Integer; safecall;
    function  Get_Edges: OleVariant; safecall;
    function  Get_VertexParams(Index: Integer): ICurveVertexParam; safecall;
    function  ReadFromFile(const FileName: WideString): WordBool; safecall;
    function  WriteToFile(const FileName: WideString): WordBool; safecall;
    function  AddVertex(Index: Integer): ICurveVertexParam; safecall;
    function  DeleteVertex(Index: Integer): WordBool; safecall;
    function  Flush: WordBool; safecall;
    function  Get_VertexParamsArray: OleVariant; safecall;
    function  GetVertexCoordinatesArray(out Coordinates: OleVariant; out Radiuses: OleVariant): WordBool; safecall;
    property Closed: WordBool read Get_Closed write Set_Closed;
    property VertexVisible: WordBool read Get_VertexVisible write Set_VertexVisible;
    property VertexCount: Integer read Get_VertexCount;
    property Edges: OleVariant read Get_Edges;
    property VertexParams[Index: Integer]: ICurveVertexParam read Get_VertexParams;
    property VertexParamsArray: OleVariant read Get_VertexParamsArray;
  end;

// *********************************************************************//
// DispIntf:  IPolyLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6CE7843D-9AFA-48FF-B444-61CDF036D118}
// *********************************************************************//
  IPolyLineDisp = dispinterface
    ['{6CE7843D-9AFA-48FF-B444-61CDF036D118}']
    property Closed: WordBool dispid 1;
    property VertexVisible: WordBool dispid 2;
    property VertexCount: Integer readonly dispid 3;
    property Edges: OleVariant readonly dispid 4;
    property VertexParams[Index: Integer]: ICurveVertexParam readonly dispid 5;
    function  ReadFromFile(const FileName: WideString): WordBool; dispid 6;
    function  WriteToFile(const FileName: WideString): WordBool; dispid 7;
    function  AddVertex(Index: Integer): ICurveVertexParam; dispid 8;
    function  DeleteVertex(Index: Integer): WordBool; dispid 9;
    function  Flush: WordBool; dispid 10;
    property VertexParamsArray: OleVariant readonly dispid 11;
    function  GetVertexCoordinatesArray(out Coordinates: OleVariant; out Radiuses: OleVariant): WordBool; dispid 12;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IControlPoints
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E22E30F6-05EE-4FB5-9EEB-E288234F256A}
// *********************************************************************//
  IControlPoints = interface(IModelObjects)
    ['{E22E30F6-05EE-4FB5-9EEB-E288234F256A}']
    function  Get_ControlPoint(Index: OleVariant): IControlPoint; safecall;
    function  Add: IControlPoint; safecall;
    property ControlPoint[Index: OleVariant]: IControlPoint read Get_ControlPoint;
  end;

// *********************************************************************//
// DispIntf:  IControlPointsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E22E30F6-05EE-4FB5-9EEB-E288234F256A}
// *********************************************************************//
  IControlPointsDisp = dispinterface
    ['{E22E30F6-05EE-4FB5-9EEB-E288234F256A}']
    property ControlPoint[Index: OleVariant]: IControlPoint readonly dispid 1;
    function  Add: IControlPoint; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IControlPoint
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {39F4FC2C-99E7-411B-9036-9C756A71E211}
// *********************************************************************//
  IControlPoint = interface(IPoint3D)
    ['{39F4FC2C-99E7-411B-9036-9C756A71E211}']
  end;

// *********************************************************************//
// DispIntf:  IControlPointDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {39F4FC2C-99E7-411B-9036-9C756A71E211}
// *********************************************************************//
  IControlPointDisp = dispinterface
    ['{39F4FC2C-99E7-411B-9036-9C756A71E211}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Z: Double dispid 3;
    function  SetAssociationObject(const NewVal: IModelObject): WordBool; dispid 4;
    property AssociationObject: IModelObject readonly dispid 5;
    property Symbol: ksAnnotationSymbolEnum dispid 6;
    property ParameterType: ksPoint3DTypeEnum dispid 7;
    property Parameters: IKompasAPIObject readonly dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IConjunctivePoints
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4DF343A0-8744-429D-A605-0EEABB7B5F23}
// *********************************************************************//
  IConjunctivePoints = interface(IModelObjects)
    ['{4DF343A0-8744-429D-A605-0EEABB7B5F23}']
    function  Get_ConjunctivePoint(Index: OleVariant): IConjunctivePoint; safecall;
    function  Add: IConjunctivePoint; safecall;
    property ConjunctivePoint[Index: OleVariant]: IConjunctivePoint read Get_ConjunctivePoint;
  end;

// *********************************************************************//
// DispIntf:  IConjunctivePointsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4DF343A0-8744-429D-A605-0EEABB7B5F23}
// *********************************************************************//
  IConjunctivePointsDisp = dispinterface
    ['{4DF343A0-8744-429D-A605-0EEABB7B5F23}']
    property ConjunctivePoint[Index: OleVariant]: IConjunctivePoint readonly dispid 1;
    function  Add: IConjunctivePoint; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IConjunctivePoint
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BC7AD518-9599-490B-9E2B-9711FD9B8D4C}
// *********************************************************************//
  IConjunctivePoint = interface(IPoint3D)
    ['{BC7AD518-9599-490B-9E2B-9711FD9B8D4C}']
    function  SetDirectionObject1(const NewVal: IModelObject): WordBool; safecall;
    function  Get_DirectionObject1: IModelObject; safecall;
    function  SetDirectionObject2(const NewVal: IModelObject): WordBool; safecall;
    function  Get_DirectionObject2: IModelObject; safecall;
    function  Get_Direction1: WordBool; safecall;
    procedure Set_Direction1(Val: WordBool); safecall;
    function  Get_Direction2: WordBool; safecall;
    procedure Set_Direction2(Val: WordBool); safecall;
    function  Get_Axis(Val: ksObj3dTypeEnum): IModelObject; safecall;
    property DirectionObject1: IModelObject read Get_DirectionObject1;
    property DirectionObject2: IModelObject read Get_DirectionObject2;
    property Direction1: WordBool read Get_Direction1 write Set_Direction1;
    property Direction2: WordBool read Get_Direction2 write Set_Direction2;
    property Axis[Val: ksObj3dTypeEnum]: IModelObject read Get_Axis;
  end;

// *********************************************************************//
// DispIntf:  IConjunctivePointDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BC7AD518-9599-490B-9E2B-9711FD9B8D4C}
// *********************************************************************//
  IConjunctivePointDisp = dispinterface
    ['{BC7AD518-9599-490B-9E2B-9711FD9B8D4C}']
    function  SetDirectionObject1(const NewVal: IModelObject): WordBool; dispid 101;
    property DirectionObject1: IModelObject readonly dispid 102;
    function  SetDirectionObject2(const NewVal: IModelObject): WordBool; dispid 103;
    property DirectionObject2: IModelObject readonly dispid 104;
    property Direction1: WordBool dispid 105;
    property Direction2: WordBool dispid 106;
    property Axis[Val: ksObj3dTypeEnum]: IModelObject readonly dispid 107;
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Z: Double dispid 3;
    function  SetAssociationObject(const NewVal: IModelObject): WordBool; dispid 4;
    property AssociationObject: IModelObject readonly dispid 5;
    property Symbol: ksAnnotationSymbolEnum dispid 6;
    property ParameterType: ksPoint3DTypeEnum dispid 7;
    property Parameters: IKompasAPIObject readonly dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISplitLines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {986E4A45-362F-469D-A3AE-CE081B8EA93A}
// *********************************************************************//
  ISplitLines = interface(IModelObjects)
    ['{986E4A45-362F-469D-A3AE-CE081B8EA93A}']
    function  Get_SplitLine(Index: OleVariant): ISplitLine; safecall;
    function  Add: ISplitLine; safecall;
    property SplitLine[Index: OleVariant]: ISplitLine read Get_SplitLine;
  end;

// *********************************************************************//
// DispIntf:  ISplitLinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {986E4A45-362F-469D-A3AE-CE081B8EA93A}
// *********************************************************************//
  ISplitLinesDisp = dispinterface
    ['{986E4A45-362F-469D-A3AE-CE081B8EA93A}']
    property SplitLine[Index: OleVariant]: ISplitLine readonly dispid 1;
    function  Add: ISplitLine; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISplitLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {969B49D1-E660-4E94-9343-DE5B0F397B03}
// *********************************************************************//
  ISplitLine = interface(IModelObject)
    ['{969B49D1-E660-4E94-9343-DE5B0F397B03}']
    procedure Set_Sketch(const Result: ISketch); safecall;
    function  Get_Sketch: ISketch; safecall;
    function  Get_Faces: OleVariant; safecall;
    procedure Set_Faces(PVal: OleVariant); safecall;
    procedure Set_Direction(PVal: ksDirectionTypeEnum); safecall;
    function  Get_Direction: ksDirectionTypeEnum; safecall;
    property Sketch: ISketch read Get_Sketch write Set_Sketch;
    property Faces: OleVariant read Get_Faces write Set_Faces;
    property Direction: ksDirectionTypeEnum read Get_Direction write Set_Direction;
  end;

// *********************************************************************//
// DispIntf:  ISplitLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {969B49D1-E660-4E94-9343-DE5B0F397B03}
// *********************************************************************//
  ISplitLineDisp = dispinterface
    ['{969B49D1-E660-4E94-9343-DE5B0F397B03}']
    property Sketch: ISketch dispid 1;
    property Faces: OleVariant dispid 2;
    property Direction: ksDirectionTypeEnum dispid 3;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISurfacesIntersectionCurves
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {453E0E34-4D2D-47B2-8E95-EB05C731961D}
// *********************************************************************//
  ISurfacesIntersectionCurves = interface(IModelObjects)
    ['{453E0E34-4D2D-47B2-8E95-EB05C731961D}']
    function  Get_SurfacesIntersectionCurve(Index: OleVariant): ISurfacesIntersectionCurve; safecall;
    function  Add: ISurfacesIntersectionCurve; safecall;
    property SurfacesIntersectionCurve[Index: OleVariant]: ISurfacesIntersectionCurve read Get_SurfacesIntersectionCurve;
  end;

// *********************************************************************//
// DispIntf:  ISurfacesIntersectionCurvesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {453E0E34-4D2D-47B2-8E95-EB05C731961D}
// *********************************************************************//
  ISurfacesIntersectionCurvesDisp = dispinterface
    ['{453E0E34-4D2D-47B2-8E95-EB05C731961D}']
    property SurfacesIntersectionCurve[Index: OleVariant]: ISurfacesIntersectionCurve readonly dispid 1;
    function  Add: ISurfacesIntersectionCurve; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISurfacesIntersectionCurve
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {758420A0-BECB-4FDA-BDDE-1F398B41117C}
// *********************************************************************//
  ISurfacesIntersectionCurve = interface(IModelObject)
    ['{758420A0-BECB-4FDA-BDDE-1F398B41117C}']
    function  SetObjects(ObjectsArray1: OleVariant; ObjectsArray2: OleVariant): WordBool; safecall;
    function  GetObjects(out ObjectsArray1: OleVariant; out ObjectsArray2: OleVariant): WordBool; safecall;
    function  AddObjects(ForArray1: WordBool; Objects: OleVariant): WordBool; safecall;
    function  Clear(ForArray1: WordBool): WordBool; safecall;
    function  Get_ObjectsCount(ForArray1: WordBool): Integer; safecall;
    function  GetObject(ForArray1: WordBool; Index: Integer): IModelObject; safecall;
    function  Get_AutoCheck: WordBool; safecall;
    procedure Set_AutoCheck(CheckValue: WordBool); safecall;
    function  Get_EdgesChecks: OleVariant; safecall;
    procedure Set_EdgesChecks(Checks: OleVariant); safecall;
    function  Get_EdgesArraysCount: Integer; safecall;
    function  Get_Edges(Index: Integer): OleVariant; safecall;
    function  Get_EdgesCheck(EdgesArrayIndex: Integer): WordBool; safecall;
    procedure Set_EdgesCheck(EdgesArrayIndex: Integer; CheckValue: WordBool); safecall;
    property ObjectsCount[ForArray1: WordBool]: Integer read Get_ObjectsCount;
    property AutoCheck: WordBool read Get_AutoCheck write Set_AutoCheck;
    property EdgesChecks: OleVariant read Get_EdgesChecks write Set_EdgesChecks;
    property EdgesArraysCount: Integer read Get_EdgesArraysCount;
    property Edges[Index: Integer]: OleVariant read Get_Edges;
    property EdgesCheck[EdgesArrayIndex: Integer]: WordBool read Get_EdgesCheck write Set_EdgesCheck;
  end;

// *********************************************************************//
// DispIntf:  ISurfacesIntersectionCurveDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {758420A0-BECB-4FDA-BDDE-1F398B41117C}
// *********************************************************************//
  ISurfacesIntersectionCurveDisp = dispinterface
    ['{758420A0-BECB-4FDA-BDDE-1F398B41117C}']
    function  SetObjects(ObjectsArray1: OleVariant; ObjectsArray2: OleVariant): WordBool; dispid 1;
    function  GetObjects(out ObjectsArray1: OleVariant; out ObjectsArray2: OleVariant): WordBool; dispid 2;
    function  AddObjects(ForArray1: WordBool; Objects: OleVariant): WordBool; dispid 3;
    function  Clear(ForArray1: WordBool): WordBool; dispid 4;
    property ObjectsCount[ForArray1: WordBool]: Integer readonly dispid 5;
    function  GetObject(ForArray1: WordBool; Index: Integer): IModelObject; dispid 6;
    property AutoCheck: WordBool dispid 7;
    property EdgesChecks: OleVariant dispid 8;
    property EdgesArraysCount: Integer readonly dispid 9;
    property Edges[Index: Integer]: OleVariant readonly dispid 10;
    property EdgesCheck[EdgesArrayIndex: Integer]: WordBool dispid 11;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEquidistants3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8B94F332-EEFD-4610-9C55-20A1F7336122}
// *********************************************************************//
  IEquidistants3D = interface(IModelObjects)
    ['{8B94F332-EEFD-4610-9C55-20A1F7336122}']
    function  Get_Equidistant3D(Index: OleVariant): IEquidistant3D; safecall;
    function  Add: IEquidistant3D; safecall;
    property Equidistant3D[Index: OleVariant]: IEquidistant3D read Get_Equidistant3D;
  end;

// *********************************************************************//
// DispIntf:  IEquidistants3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8B94F332-EEFD-4610-9C55-20A1F7336122}
// *********************************************************************//
  IEquidistants3DDisp = dispinterface
    ['{8B94F332-EEFD-4610-9C55-20A1F7336122}']
    property Equidistant3D[Index: OleVariant]: IEquidistant3D readonly dispid 1;
    function  Add: IEquidistant3D; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEquidistant3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C25DDBF4-3CC1-467D-B996-E30ED4D529B6}
// *********************************************************************//
  IEquidistant3D = interface(IModelObject)
    ['{C25DDBF4-3CC1-467D-B996-E30ED4D529B6}']
    function  Get_Edges: OleVariant; safecall;
    procedure Set_Edges(PVal: OleVariant); safecall;
    procedure Set_OnFace(PVal: WordBool); safecall;
    function  Get_OnFace: WordBool; safecall;
    function  Get_BaseObject: IModelObject; safecall;
    procedure Set_BaseObject(const Result: IModelObject); safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Distance(PVal: Double); safecall;
    function  Get_Distance: Double; safecall;
    procedure Set_CutMode(PVal: ksEquidistant3DCutModeEnum); safecall;
    function  Get_CutMode: ksEquidistant3DCutModeEnum; safecall;
    procedure Set_KeepRadius(PVal: WordBool); safecall;
    function  Get_KeepRadius: WordBool; safecall;
    procedure Set_DirFromBegin(PVal: WordBool); safecall;
    function  Get_DirFromBegin: WordBool; safecall;
    property Edges: OleVariant read Get_Edges write Set_Edges;
    property OnFace: WordBool read Get_OnFace write Set_OnFace;
    property BaseObject: IModelObject read Get_BaseObject write Set_BaseObject;
    property Angle: Double read Get_Angle write Set_Angle;
    property Distance: Double read Get_Distance write Set_Distance;
    property CutMode: ksEquidistant3DCutModeEnum read Get_CutMode write Set_CutMode;
    property KeepRadius: WordBool read Get_KeepRadius write Set_KeepRadius;
    property DirFromBegin: WordBool read Get_DirFromBegin write Set_DirFromBegin;
  end;

// *********************************************************************//
// DispIntf:  IEquidistant3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C25DDBF4-3CC1-467D-B996-E30ED4D529B6}
// *********************************************************************//
  IEquidistant3DDisp = dispinterface
    ['{C25DDBF4-3CC1-467D-B996-E30ED4D529B6}']
    property Edges: OleVariant dispid 1;
    property OnFace: WordBool dispid 2;
    property BaseObject: IModelObject dispid 3;
    property Angle: Double dispid 4;
    property Distance: Double dispid 5;
    property CutMode: ksEquidistant3DCutModeEnum dispid 6;
    property KeepRadius: WordBool dispid 7;
    property DirFromBegin: WordBool dispid 8;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILocalCSAxesDirectionParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {919DF6DB-0BA9-4EDD-B681-33E0B519834B}
// *********************************************************************//
  ILocalCSAxesDirectionParam = interface(IKompasAPIObject)
    ['{919DF6DB-0BA9-4EDD-B681-33E0B519834B}']
    function  SetDirectingObject(Axis: ksObj3dTypeEnum; const Object_: IModelObject): WordBool; safecall;
    function  Get_DirectingObject(Axis: ksObj3dTypeEnum): IModelObject; safecall;
    function  RotateAxis(Axis: ksObj3dTypeEnum): WordBool; safecall;
    procedure Set_AngleByOwnAxis(Axis: ksObj3dTypeEnum; Param2: Double); safecall;
    property DirectingObject[Axis: ksObj3dTypeEnum]: IModelObject read Get_DirectingObject;
    property AngleByOwnAxis[Axis: ksObj3dTypeEnum]: Double write Set_AngleByOwnAxis;
  end;

// *********************************************************************//
// DispIntf:  ILocalCSAxesDirectionParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {919DF6DB-0BA9-4EDD-B681-33E0B519834B}
// *********************************************************************//
  ILocalCSAxesDirectionParamDisp = dispinterface
    ['{919DF6DB-0BA9-4EDD-B681-33E0B519834B}']
    function  SetDirectingObject(Axis: ksObj3dTypeEnum; const Object_: IModelObject): WordBool; dispid 1;
    property DirectingObject[Axis: ksObj3dTypeEnum]: IModelObject readonly dispid 2;
    function  RotateAxis(Axis: ksObj3dTypeEnum): WordBool; dispid 3;
    property AngleByOwnAxis[Axis: ksObj3dTypeEnum]: Double writeonly dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILocalCSEulerParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AD261149-1455-49BD-BA0A-B1760A0C8CB0}
// *********************************************************************//
  ILocalCSEulerParam = interface(IKompasAPIObject)
    ['{AD261149-1455-49BD-BA0A-B1760A0C8CB0}']
    procedure Set_NutationAngle(Result: Double); safecall;
    function  Get_NutationAngle: Double; safecall;
    procedure Set_PrecessionAngle(Result: Double); safecall;
    function  Get_PrecessionAngle: Double; safecall;
    procedure Set_RotationAngle(Result: Double); safecall;
    function  Get_RotationAngle: Double; safecall;
    property NutationAngle: Double read Get_NutationAngle write Set_NutationAngle;
    property PrecessionAngle: Double read Get_PrecessionAngle write Set_PrecessionAngle;
    property RotationAngle: Double read Get_RotationAngle write Set_RotationAngle;
  end;

// *********************************************************************//
// DispIntf:  ILocalCSEulerParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AD261149-1455-49BD-BA0A-B1760A0C8CB0}
// *********************************************************************//
  ILocalCSEulerParamDisp = dispinterface
    ['{AD261149-1455-49BD-BA0A-B1760A0C8CB0}']
    property NutationAngle: Double dispid 1;
    property PrecessionAngle: Double dispid 2;
    property RotationAngle: Double dispid 3;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRoughParams
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6C1943CE-8FDB-47D2-9B2F-95F7B851BE3D}
// *********************************************************************//
  IRoughParams = interface(IDispatch)
    ['{6C1943CE-8FDB-47D2-9B2F-95F7B851BE3D}']
    function  Get_SignType: ksRoughSignEnum; safecall;
    procedure Set_SignType(Result: ksRoughSignEnum); safecall;
    function  Get_RoughParamText: IText; safecall;
    function  Get_ProcessText: IText; safecall;
    function  Get_BaseLengthText: IText; safecall;
    function  Get_TrendText: IText; safecall;
    function  Get_ProcessingByContour: WordBool; safecall;
    procedure Set_ProcessingByContour(Result: WordBool); safecall;
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(Result: ksShelfDirectionEnum); safecall;
    function  Get_LeaderLength: Double; safecall;
    procedure Set_LeaderLength(Result: Double); safecall;
    function  Get_LeaderAngle: Double; safecall;
    procedure Set_LeaderAngle(Result: Double); safecall;
    function  Get_ArrowType: ksArrowEnum; safecall;
    procedure Set_ArrowType(Result: ksArrowEnum); safecall;
    function  Get_ArrowInside: WordBool; safecall;
    procedure Set_ArrowInside(Result: WordBool); safecall;
    property SignType: ksRoughSignEnum read Get_SignType write Set_SignType;
    property RoughParamText: IText read Get_RoughParamText;
    property ProcessText: IText read Get_ProcessText;
    property BaseLengthText: IText read Get_BaseLengthText;
    property TrendText: IText read Get_TrendText;
    property ProcessingByContour: WordBool read Get_ProcessingByContour write Set_ProcessingByContour;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property LeaderLength: Double read Get_LeaderLength write Set_LeaderLength;
    property LeaderAngle: Double read Get_LeaderAngle write Set_LeaderAngle;
    property ArrowType: ksArrowEnum read Get_ArrowType write Set_ArrowType;
    property ArrowInside: WordBool read Get_ArrowInside write Set_ArrowInside;
  end;

// *********************************************************************//
// DispIntf:  IRoughParamsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6C1943CE-8FDB-47D2-9B2F-95F7B851BE3D}
// *********************************************************************//
  IRoughParamsDisp = dispinterface
    ['{6C1943CE-8FDB-47D2-9B2F-95F7B851BE3D}']
    property SignType: ksRoughSignEnum dispid 1501;
    property RoughParamText: IText readonly dispid 1502;
    property ProcessText: IText readonly dispid 1503;
    property BaseLengthText: IText readonly dispid 1504;
    property TrendText: IText readonly dispid 1505;
    property ProcessingByContour: WordBool dispid 1506;
    property ShelfDirection: ksShelfDirectionEnum dispid 1507;
    property LeaderLength: Double dispid 1508;
    property LeaderAngle: Double dispid 1509;
    property ArrowType: ksArrowEnum dispid 1510;
    property ArrowInside: WordBool dispid 1511;
  end;

// *********************************************************************//
// Interface: IBranchs3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AFE08AEC-F751-42D9-A6F5-3C004E4D41A6}
// *********************************************************************//
  IBranchs3D = interface(IDispatch)
    ['{AFE08AEC-F751-42D9-A6F5-3C004E4D41A6}']
    function  Get_BranchCount: Integer; safecall;
    function  GetBranchBeginPoint(out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetBranchBeginPoint(X: Double; Y: Double; Z: Double): WordBool; safecall;
    function  GetBranchEndPoint(Index: Integer; out X: Double; out Y: Double; out Z: Double): WordBool; safecall;
    function  SetBranchEndPoint(Index: Integer; X: Double; Y: Double; Z: Double): WordBool; safecall;
    procedure Set_BranchPoints(Index: Integer; PVal: OleVariant); safecall;
    function  Get_BranchPoints(Index: Integer): OleVariant; safecall;
    function  Get_BranchPointsCount(Index: Integer): Integer; safecall;
    function  AddBranch(Points: OleVariant; const Object_: IModelObject): WordBool; safecall;
    function  AddBranchByPoint(X: Double; Y: Double; Z: Double; const Object_: IModelObject): WordBool; safecall;
    function  DeleteBranch(Index: Integer): WordBool; safecall;
    function  Get_BranchObject(Index: Integer): IModelObject; safecall;
    function  Get_BranchObjects: OleVariant; safecall;
    function  Get_BranchEndPoints: OleVariant; safecall;
    property BranchCount: Integer read Get_BranchCount;
    property BranchPoints[Index: Integer]: OleVariant read Get_BranchPoints write Set_BranchPoints;
    property BranchPointsCount[Index: Integer]: Integer read Get_BranchPointsCount;
    property BranchObject[Index: Integer]: IModelObject read Get_BranchObject;
    property BranchObjects: OleVariant read Get_BranchObjects;
    property BranchEndPoints: OleVariant read Get_BranchEndPoints;
  end;

// *********************************************************************//
// DispIntf:  IBranchs3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AFE08AEC-F751-42D9-A6F5-3C004E4D41A6}
// *********************************************************************//
  IBranchs3DDisp = dispinterface
    ['{AFE08AEC-F751-42D9-A6F5-3C004E4D41A6}']
    property BranchCount: Integer readonly dispid 5001;
    function  GetBranchBeginPoint(out X: Double; out Y: Double; out Z: Double): WordBool; dispid 5002;
    function  SetBranchBeginPoint(X: Double; Y: Double; Z: Double): WordBool; dispid 5003;
    function  GetBranchEndPoint(Index: Integer; out X: Double; out Y: Double; out Z: Double): WordBool; dispid 5004;
    function  SetBranchEndPoint(Index: Integer; X: Double; Y: Double; Z: Double): WordBool; dispid 5005;
    property BranchPoints[Index: Integer]: OleVariant dispid 5006;
    property BranchPointsCount[Index: Integer]: Integer readonly dispid 5007;
    function  AddBranch(Points: OleVariant; const Object_: IModelObject): WordBool; dispid 5008;
    function  AddBranchByPoint(X: Double; Y: Double; Z: Double; const Object_: IModelObject): WordBool; dispid 5009;
    function  DeleteBranch(Index: Integer): WordBool; dispid 5010;
    property BranchObject[Index: Integer]: IModelObject readonly dispid 5011;
    property BranchObjects: OleVariant readonly dispid 5012;
    property BranchEndPoints: OleVariant readonly dispid 5013;
  end;

// *********************************************************************//
// Interface: ILocalCSOrientByObjectParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {618485E7-D88A-4DCC-8896-7EA04D831DBB}
// *********************************************************************//
  ILocalCSOrientByObjectParam = interface(IKompasAPIObject)
    ['{618485E7-D88A-4DCC-8896-7EA04D831DBB}']
    function  SetOrientationObject(const Object_: IModelObject): WordBool; safecall;
    function  Get_OrientationObject: IModelObject; safecall;
    property OrientationObject: IModelObject read Get_OrientationObject;
  end;

// *********************************************************************//
// DispIntf:  ILocalCSOrientByObjectParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {618485E7-D88A-4DCC-8896-7EA04D831DBB}
// *********************************************************************//
  ILocalCSOrientByObjectParamDisp = dispinterface
    ['{618485E7-D88A-4DCC-8896-7EA04D831DBB}']
    function  SetOrientationObject(const Object_: IModelObject): WordBool; dispid 1;
    property OrientationObject: IModelObject readonly dispid 2;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILocalCSObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {116F7E59-F175-47D2-8346-EB3C87D60578}
// *********************************************************************//
  ILocalCSObject = interface(IDispatch)
    ['{116F7E59-F175-47D2-8346-EB3C87D60578}']
    procedure Set_ModelObjectParamType(PVal: ksModelObjectParamTypeEnum); safecall;
    function  Get_ModelObjectParamType: ksModelObjectParamTypeEnum; safecall;
    function  Get_LocalCoordinateSystem: ILocalCoordinateSystem; safecall;
    property ModelObjectParamType: ksModelObjectParamTypeEnum read Get_ModelObjectParamType write Set_ModelObjectParamType;
    property LocalCoordinateSystem: ILocalCoordinateSystem read Get_LocalCoordinateSystem;
  end;

// *********************************************************************//
// DispIntf:  ILocalCSObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {116F7E59-F175-47D2-8346-EB3C87D60578}
// *********************************************************************//
  ILocalCSObjectDisp = dispinterface
    ['{116F7E59-F175-47D2-8346-EB3C87D60578}']
    property ModelObjectParamType: ksModelObjectParamTypeEnum dispid 901;
    property LocalCoordinateSystem: ILocalCoordinateSystem readonly dispid 902;
  end;

// *********************************************************************//
// Interface: ISurfaceContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2FE3B199-A6B2-4644-9950-F9905250FF0D}
// *********************************************************************//
  ISurfaceContainer = interface(IDispatch)
    ['{2FE3B199-A6B2-4644-9950-F9905250FF0D}']
    function  Get_SurfacePatches: ISurfacePatches; safecall;
    function  Get_FaceRemovers: IFaceRemovers; safecall;
    function  Get_SurfaceSewers: ISurfaceSewers; safecall;
    function  Get_NurbsSurfaces: INurbsSurfaces; safecall;
    property SurfacePatches: ISurfacePatches read Get_SurfacePatches;
    property FaceRemovers: IFaceRemovers read Get_FaceRemovers;
    property SurfaceSewers: ISurfaceSewers read Get_SurfaceSewers;
    property NurbsSurfaces: INurbsSurfaces read Get_NurbsSurfaces;
  end;

// *********************************************************************//
// DispIntf:  ISurfaceContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2FE3B199-A6B2-4644-9950-F9905250FF0D}
// *********************************************************************//
  ISurfaceContainerDisp = dispinterface
    ['{2FE3B199-A6B2-4644-9950-F9905250FF0D}']
    property SurfacePatches: ISurfacePatches readonly dispid 15001;
    property FaceRemovers: IFaceRemovers readonly dispid 15002;
    property SurfaceSewers: ISurfaceSewers readonly dispid 15003;
    property NurbsSurfaces: INurbsSurfaces readonly dispid 15004;
  end;

// *********************************************************************//
// Interface: ISurfacePatches
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DEE5B135-4D8E-4AD8-AEA4-E763F68290B2}
// *********************************************************************//
  ISurfacePatches = interface(IModelObjects)
    ['{DEE5B135-4D8E-4AD8-AEA4-E763F68290B2}']
    function  Get_SurfacePatch(Index: OleVariant): ISurfacePatch; safecall;
    function  Add: ISurfacePatch; safecall;
    property SurfacePatch[Index: OleVariant]: ISurfacePatch read Get_SurfacePatch;
  end;

// *********************************************************************//
// DispIntf:  ISurfacePatchesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DEE5B135-4D8E-4AD8-AEA4-E763F68290B2}
// *********************************************************************//
  ISurfacePatchesDisp = dispinterface
    ['{DEE5B135-4D8E-4AD8-AEA4-E763F68290B2}']
    property SurfacePatch[Index: OleVariant]: ISurfacePatch readonly dispid 1;
    function  Add: ISurfacePatch; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISurfacePatch
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B6330040-7ABA-4ECD-8C92-5B441AF11C3B}
// *********************************************************************//
  ISurfacePatch = interface(IModelObject)
    ['{B6330040-7ABA-4ECD-8C92-5B441AF11C3B}']
    function  Get_Edges: OleVariant; safecall;
    procedure Set_Edges(PVal: OleVariant); safecall;
    property Edges: OleVariant read Get_Edges write Set_Edges;
  end;

// *********************************************************************//
// DispIntf:  ISurfacePatchDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B6330040-7ABA-4ECD-8C92-5B441AF11C3B}
// *********************************************************************//
  ISurfacePatchDisp = dispinterface
    ['{B6330040-7ABA-4ECD-8C92-5B441AF11C3B}']
    property Edges: OleVariant dispid 1;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IFaceRemovers
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6E177627-05D6-40B4-B955-9203F00656B5}
// *********************************************************************//
  IFaceRemovers = interface(IModelObjects)
    ['{6E177627-05D6-40B4-B955-9203F00656B5}']
    function  Get_FaceRemover(Index: OleVariant): IFaceRemover; safecall;
    function  Add: IFaceRemover; safecall;
    property FaceRemover[Index: OleVariant]: IFaceRemover read Get_FaceRemover;
  end;

// *********************************************************************//
// DispIntf:  IFaceRemoversDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6E177627-05D6-40B4-B955-9203F00656B5}
// *********************************************************************//
  IFaceRemoversDisp = dispinterface
    ['{6E177627-05D6-40B4-B955-9203F00656B5}']
    property FaceRemover[Index: OleVariant]: IFaceRemover readonly dispid 1;
    function  Add: IFaceRemover; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IFaceRemover
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4CAE21E3-4183-47A6-94B8-8AD14D5775EE}
// *********************************************************************//
  IFaceRemover = interface(IModelObject)
    ['{4CAE21E3-4183-47A6-94B8-8AD14D5775EE}']
    function  Get_Faces: OleVariant; safecall;
    procedure Set_Faces(PVal: OleVariant); safecall;
    property Faces: OleVariant read Get_Faces write Set_Faces;
  end;

// *********************************************************************//
// DispIntf:  IFaceRemoverDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4CAE21E3-4183-47A6-94B8-8AD14D5775EE}
// *********************************************************************//
  IFaceRemoverDisp = dispinterface
    ['{4CAE21E3-4183-47A6-94B8-8AD14D5775EE}']
    property Faces: OleVariant dispid 1;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISurfaceSewers
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {70AE0BA0-2059-4EAB-BE41-A6E8C8ACFA8A}
// *********************************************************************//
  ISurfaceSewers = interface(IModelObjects)
    ['{70AE0BA0-2059-4EAB-BE41-A6E8C8ACFA8A}']
    function  Get_SurfaceSewer(Index: OleVariant): ISurfaceSewer; safecall;
    function  Add: ISurfaceSewer; safecall;
    property SurfaceSewer[Index: OleVariant]: ISurfaceSewer read Get_SurfaceSewer;
  end;

// *********************************************************************//
// DispIntf:  ISurfaceSewersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {70AE0BA0-2059-4EAB-BE41-A6E8C8ACFA8A}
// *********************************************************************//
  ISurfaceSewersDisp = dispinterface
    ['{70AE0BA0-2059-4EAB-BE41-A6E8C8ACFA8A}']
    property SurfaceSewer[Index: OleVariant]: ISurfaceSewer readonly dispid 1;
    function  Add: ISurfaceSewer; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISurfaceSewer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {031FD1C7-9CB6-4E49-A27D-73B8D0B648D4}
// *********************************************************************//
  ISurfaceSewer = interface(IModelObject)
    ['{031FD1C7-9CB6-4E49-A27D-73B8D0B648D4}']
    function  Get_Shells: OleVariant; safecall;
    procedure Set_Shells(PVal: OleVariant); safecall;
    function  Get_Precision: Double; safecall;
    procedure Set_Precision(Result: Double); safecall;
    function  Get_CreateBody: WordBool; safecall;
    procedure Set_CreateBody(Result: WordBool); safecall;
    property Shells: OleVariant read Get_Shells write Set_Shells;
    property Precision: Double read Get_Precision write Set_Precision;
    property CreateBody: WordBool read Get_CreateBody write Set_CreateBody;
  end;

// *********************************************************************//
// DispIntf:  ISurfaceSewerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {031FD1C7-9CB6-4E49-A27D-73B8D0B648D4}
// *********************************************************************//
  ISurfaceSewerDisp = dispinterface
    ['{031FD1C7-9CB6-4E49-A27D-73B8D0B648D4}']
    property Shells: OleVariant dispid 1;
    property Precision: Double dispid 2;
    property CreateBody: WordBool dispid 3;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: INurbsSurfaces
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DB184867-6207-4FB7-9B3F-882BEAA16B4D}
// *********************************************************************//
  INurbsSurfaces = interface(IModelObjects)
    ['{DB184867-6207-4FB7-9B3F-882BEAA16B4D}']
    function  Get_NurbsSurface(Index: OleVariant): INurbsSurface; safecall;
    function  Add: INurbsSurface; safecall;
    property NurbsSurface[Index: OleVariant]: INurbsSurface read Get_NurbsSurface;
  end;

// *********************************************************************//
// DispIntf:  INurbsSurfacesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DB184867-6207-4FB7-9B3F-882BEAA16B4D}
// *********************************************************************//
  INurbsSurfacesDisp = dispinterface
    ['{DB184867-6207-4FB7-9B3F-882BEAA16B4D}']
    property NurbsSurface[Index: OleVariant]: INurbsSurface readonly dispid 1;
    function  Add: INurbsSurface; dispid 2;
    property Item[Index: OleVariant]: IModelObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: INurbsSurface
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5DAFC690-B3A7-4771-8E98-F83B5BF0D454}
// *********************************************************************//
  INurbsSurface = interface(IModelObject)
    ['{5DAFC690-B3A7-4771-8E98-F83B5BF0D454}']
    function  GetNurbsParams(ClosedV: WordBool; ClosedU: WordBool; out DegreeV: Integer; 
                             out DegreeU: Integer; out NPV: Integer; out NPU: Integer; 
                             out Points: OleVariant; out Weights: OleVariant; 
                             out KnotsV: OleVariant; out KnotsU: OleVariant): WordBool; safecall;
    function  SetNurbsParams(ClosedV: WordBool; ClosedU: WordBool; DegreeV: Integer; 
                             DegreeU: Integer; NPV: Integer; NPU: Integer; Points: OleVariant; 
                             Weights: OleVariant; KnotsV: OleVariant; KnotsU: OleVariant): WordBool; safecall;
    function  InitParamByFace(const Face: IModelObject): WordBool; safecall;
    function  Get_ClosedU: WordBool; safecall;
    procedure Set_ClosedU(PVal: WordBool); safecall;
    function  Get_ClosedV: WordBool; safecall;
    procedure Set_ClosedV(PVal: WordBool); safecall;
    function  Get_BoundaryCount: Integer; safecall;
    function  AddBoundary(UV: WordBool; Closed: WordBool; Degree: Integer; Points: OleVariant; 
                          Weights: OleVariant; Knots: OleVariant; TMin: Double; TMax: Double): WordBool; safecall;
    function  GetBoundary(UV: WordBool; Closed: WordBool; BoundaryIndex: Integer; 
                          out Degree: Integer; out Points: OleVariant; out Weights: OleVariant; 
                          out Knots: OleVariant; out TMin: Double; out TMax: Double): WordBool; safecall;
    function  DeleteBoundary(BoundaryIndex: Integer): WordBool; safecall;
    property ClosedU: WordBool read Get_ClosedU write Set_ClosedU;
    property ClosedV: WordBool read Get_ClosedV write Set_ClosedV;
    property BoundaryCount: Integer read Get_BoundaryCount;
  end;

// *********************************************************************//
// DispIntf:  INurbsSurfaceDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5DAFC690-B3A7-4771-8E98-F83B5BF0D454}
// *********************************************************************//
  INurbsSurfaceDisp = dispinterface
    ['{5DAFC690-B3A7-4771-8E98-F83B5BF0D454}']
    function  GetNurbsParams(ClosedV: WordBool; ClosedU: WordBool; out DegreeV: Integer; 
                             out DegreeU: Integer; out NPV: Integer; out NPU: Integer; 
                             out Points: OleVariant; out Weights: OleVariant; 
                             out KnotsV: OleVariant; out KnotsU: OleVariant): WordBool; dispid 1;
    function  SetNurbsParams(ClosedV: WordBool; ClosedU: WordBool; DegreeV: Integer; 
                             DegreeU: Integer; NPV: Integer; NPU: Integer; Points: OleVariant; 
                             Weights: OleVariant; KnotsV: OleVariant; KnotsU: OleVariant): WordBool; dispid 2;
    function  InitParamByFace(const Face: IModelObject): WordBool; dispid 3;
    property ClosedU: WordBool dispid 4;
    property ClosedV: WordBool dispid 5;
    property BoundaryCount: Integer readonly dispid 6;
    function  AddBoundary(UV: WordBool; Closed: WordBool; Degree: Integer; Points: OleVariant; 
                          Weights: OleVariant; Knots: OleVariant; TMin: Double; TMax: Double): WordBool; dispid 7;
    function  GetBoundary(UV: WordBool; Closed: WordBool; BoundaryIndex: Integer; 
                          out Degree: Integer; out Points: OleVariant; out Weights: OleVariant; 
                          out Knots: OleVariant; out TMin: Double; out TMax: Double): WordBool; dispid 8;
    function  DeleteBoundary(BoundaryIndex: Integer): WordBool; dispid 9;
    property Name: WideString dispid 501;
    property Hidden: WordBool dispid 502;
    function  Update: WordBool; dispid 503;
    property Valid: WordBool readonly dispid 504;
    property Part: IPart7 readonly dispid 505;
    property ModelObjectType: ksObj3dTypeEnum readonly dispid 506;
    property Owner: IFeature7 readonly dispid 507;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IColorParam7
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BE6A80EE-38FE-4432-8331-BF864830761C}
// *********************************************************************//
  IColorParam7 = interface(IDispatch)
    ['{BE6A80EE-38FE-4432-8331-BF864830761C}']
    function  Get_UseColor: ksUseColorEnum; safecall;
    procedure Set_UseColor(PVal: ksUseColorEnum); safecall;
    function  Get_Color: Integer; safecall;
    procedure Set_Color(PVal: Integer); safecall;
    function  Get_Ambient: Double; safecall;
    procedure Set_Ambient(PVal: Double); safecall;
    function  Get_Diffuse: Double; safecall;
    procedure Set_Diffuse(PVal: Double); safecall;
    function  Get_Specularity: Double; safecall;
    procedure Set_Specularity(PVal: Double); safecall;
    function  Get_Shininess: Double; safecall;
    procedure Set_Shininess(PVal: Double); safecall;
    function  Get_Transparency: Double; safecall;
    procedure Set_Transparency(PVal: Double); safecall;
    function  Get_Emission: Double; safecall;
    procedure Set_Emission(PVal: Double); safecall;
    function  GetAdvancedColor(out Color: Integer; out Ambient: Double; out Diffuse: Double; 
                               out Specularity: Double; out Shininess: Double; 
                               out Transparency: Double; out Emission: Double): WordBool; safecall;
    function  SetAdvancedColor(Color: Integer; Ambient: Double; Diffuse: Double; 
                               Specularity: Double; Shininess: Double; Transparency: Double; 
                               Emission: Double): WordBool; safecall;
    property UseColor: ksUseColorEnum read Get_UseColor write Set_UseColor;
    property Color: Integer read Get_Color write Set_Color;
    property Ambient: Double read Get_Ambient write Set_Ambient;
    property Diffuse: Double read Get_Diffuse write Set_Diffuse;
    property Specularity: Double read Get_Specularity write Set_Specularity;
    property Shininess: Double read Get_Shininess write Set_Shininess;
    property Transparency: Double read Get_Transparency write Set_Transparency;
    property Emission: Double read Get_Emission write Set_Emission;
  end;

// *********************************************************************//
// DispIntf:  IColorParam7Disp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BE6A80EE-38FE-4432-8331-BF864830761C}
// *********************************************************************//
  IColorParam7Disp = dispinterface
    ['{BE6A80EE-38FE-4432-8331-BF864830761C}']
    property UseColor: ksUseColorEnum dispid 6001;
    property Color: Integer dispid 6002;
    property Ambient: Double dispid 6003;
    property Diffuse: Double dispid 6004;
    property Specularity: Double dispid 6005;
    property Shininess: Double dispid 6006;
    property Transparency: Double dispid 6007;
    property Emission: Double dispid 6008;
    function  GetAdvancedColor(out Color: Integer; out Ambient: Double; out Diffuse: Double; 
                               out Specularity: Double; out Shininess: Double; 
                               out Transparency: Double; out Emission: Double): WordBool; dispid 6009;
    function  SetAdvancedColor(Color: Integer; Ambient: Double; Diffuse: Double; 
                               Specularity: Double; Shininess: Double; Transparency: Double; 
                               Emission: Double): WordBool; dispid 6010;
  end;

// *********************************************************************//
// Interface: IDrawingText
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E32E5703-0141-41CF-9917-9565648FE331}
// *********************************************************************//
  IDrawingText = interface(IDrawingObject)
    ['{E32E5703-0141-41CF-9917-9565648FE331}']
    function  Get_X: Double; safecall;
    procedure Set_X(Result: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Y(Result: Double); safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Height: Double; safecall;
    procedure Set_Height(Result: Double); safecall;
    function  Get_Width: Double; safecall;
    procedure Set_Width(Result: Double); safecall;
    function  Get_HFormat: ksTextHorizontalFormatEnum; safecall;
    procedure Set_HFormat(Result: ksTextHorizontalFormatEnum); safecall;
    function  Get_VFormat: WordBool; safecall;
    procedure Set_VFormat(Result: WordBool); safecall;
    function  Get_Allocation: ksAllocationEnum; safecall;
    procedure Set_Allocation(Result: ksAllocationEnum); safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Angle: Double read Get_Angle write Set_Angle;
    property Height: Double read Get_Height write Set_Height;
    property Width: Double read Get_Width write Set_Width;
    property HFormat: ksTextHorizontalFormatEnum read Get_HFormat write Set_HFormat;
    property VFormat: WordBool read Get_VFormat write Set_VFormat;
    property Allocation: ksAllocationEnum read Get_Allocation write Set_Allocation;
  end;

// *********************************************************************//
// DispIntf:  IDrawingTextDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E32E5703-0141-41CF-9917-9565648FE331}
// *********************************************************************//
  IDrawingTextDisp = dispinterface
    ['{E32E5703-0141-41CF-9917-9565648FE331}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Angle: Double dispid 3;
    property Height: Double dispid 4;
    property Width: Double dispid 5;
    property HFormat: ksTextHorizontalFormatEnum dispid 6;
    property VFormat: WordBool dispid 7;
    property Allocation: ksAllocationEnum dispid 8;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingTexts
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C72E0E9D-7078-4AA7-95E4-E8C75CA9BCEC}
// *********************************************************************//
  IDrawingTexts = interface(IDrawingObjects)
    ['{C72E0E9D-7078-4AA7-95E4-E8C75CA9BCEC}']
    function  Get_DrawingText(Index: OleVariant): IDrawingText; safecall;
    function  Add: IDrawingText; safecall;
    property DrawingText[Index: OleVariant]: IDrawingText read Get_DrawingText;
  end;

// *********************************************************************//
// DispIntf:  IDrawingTextsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C72E0E9D-7078-4AA7-95E4-E8C75CA9BCEC}
// *********************************************************************//
  IDrawingTextsDisp = dispinterface
    ['{C72E0E9D-7078-4AA7-95E4-E8C75CA9BCEC}']
    property DrawingText[Index: OleVariant]: IDrawingText readonly dispid 1;
    function  Add: IDrawingText; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D603FEC9-75B7-4FA5-918F-47074C45B848}
// *********************************************************************//
  IDrawingContainer = interface(IDispatch)
    ['{D603FEC9-75B7-4FA5-918F-47074C45B848}']
    function  Get_Objects(ObjType: OleVariant): OleVariant; safecall;
    function  Get_DrawingTexts: IDrawingTexts; safecall;
    function  Get_LineSegments: ILineSegments; safecall;
    function  Get_Arcs: IArcs; safecall;
    function  Get_Multilines: IMultilines; safecall;
    function  Get_DrawingContours: IDrawingContours; safecall;
    function  Get_Circles: ICircles; safecall;
    function  Get_Points: IPoints; safecall;
    function  Get_Beziers: IBeziers; safecall;
    function  Get_MacroObjects: IMacroObjects; safecall;
    function  Get_Lines: ILines; safecall;
    function  Get_PolyLines2D: IPolyLines2D; safecall;
    function  Get_Nurbses: INurbses; safecall;
    function  Get_Rasters: IRasters; safecall;
    function  Get_OleDrawingObjects: IOleDrawingObjects; safecall;
    function  Get_Ellipses: IEllipses; safecall;
    function  Get_EllipseArcs: IEllipseArcs; safecall;
    function  Get_Rectangles: IRectangles; safecall;
    function  Get_RegularPolygons: IRegularPolygons; safecall;
    function  Get_Equidistants: IEquidistants; safecall;
    function  Get_InsertionObjects: IInsertionObjects; safecall;
    function  Get_Hatches: IHatches; safecall;
    function  Get_Colourings: IColourings; safecall;
    property Objects[ObjType: OleVariant]: OleVariant read Get_Objects;
    property DrawingTexts: IDrawingTexts read Get_DrawingTexts;
    property LineSegments: ILineSegments read Get_LineSegments;
    property Arcs: IArcs read Get_Arcs;
    property Multilines: IMultilines read Get_Multilines;
    property DrawingContours: IDrawingContours read Get_DrawingContours;
    property Circles: ICircles read Get_Circles;
    property Points: IPoints read Get_Points;
    property Beziers: IBeziers read Get_Beziers;
    property MacroObjects: IMacroObjects read Get_MacroObjects;
    property Lines: ILines read Get_Lines;
    property PolyLines2D: IPolyLines2D read Get_PolyLines2D;
    property Nurbses: INurbses read Get_Nurbses;
    property Rasters: IRasters read Get_Rasters;
    property OleDrawingObjects: IOleDrawingObjects read Get_OleDrawingObjects;
    property Ellipses: IEllipses read Get_Ellipses;
    property EllipseArcs: IEllipseArcs read Get_EllipseArcs;
    property Rectangles: IRectangles read Get_Rectangles;
    property RegularPolygons: IRegularPolygons read Get_RegularPolygons;
    property Equidistants: IEquidistants read Get_Equidistants;
    property InsertionObjects: IInsertionObjects read Get_InsertionObjects;
    property Hatches: IHatches read Get_Hatches;
    property Colourings: IColourings read Get_Colourings;
  end;

// *********************************************************************//
// DispIntf:  IDrawingContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D603FEC9-75B7-4FA5-918F-47074C45B848}
// *********************************************************************//
  IDrawingContainerDisp = dispinterface
    ['{D603FEC9-75B7-4FA5-918F-47074C45B848}']
    property Objects[ObjType: OleVariant]: OleVariant readonly dispid 5001;
    property DrawingTexts: IDrawingTexts readonly dispid 5002;
    property LineSegments: ILineSegments readonly dispid 5003;
    property Arcs: IArcs readonly dispid 5004;
    property Multilines: IMultilines readonly dispid 5005;
    property DrawingContours: IDrawingContours readonly dispid 5006;
    property Circles: ICircles readonly dispid 5007;
    property Points: IPoints readonly dispid 5008;
    property Beziers: IBeziers readonly dispid 5009;
    property MacroObjects: IMacroObjects readonly dispid 5010;
    property Lines: ILines readonly dispid 5011;
    property PolyLines2D: IPolyLines2D readonly dispid 5012;
    property Nurbses: INurbses readonly dispid 5013;
    property Rasters: IRasters readonly dispid 5014;
    property OleDrawingObjects: IOleDrawingObjects readonly dispid 5015;
    property Ellipses: IEllipses readonly dispid 5016;
    property EllipseArcs: IEllipseArcs readonly dispid 5017;
    property Rectangles: IRectangles readonly dispid 5018;
    property RegularPolygons: IRegularPolygons readonly dispid 5019;
    property Equidistants: IEquidistants readonly dispid 5020;
    property InsertionObjects: IInsertionObjects readonly dispid 5021;
    property Hatches: IHatches readonly dispid 5022;
    property Colourings: IColourings readonly dispid 5023;
  end;

// *********************************************************************//
// Interface: ILineSegments
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B211C782-A830-468E-9F4F-C499A77078D8}
// *********************************************************************//
  ILineSegments = interface(IDrawingObjects)
    ['{B211C782-A830-468E-9F4F-C499A77078D8}']
    function  Get_LineSegment(Index: OleVariant): ILineSegment; safecall;
    function  Add: ILineSegment; safecall;
    property LineSegment[Index: OleVariant]: ILineSegment read Get_LineSegment;
  end;

// *********************************************************************//
// DispIntf:  ILineSegmentsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B211C782-A830-468E-9F4F-C499A77078D8}
// *********************************************************************//
  ILineSegmentsDisp = dispinterface
    ['{B211C782-A830-468E-9F4F-C499A77078D8}']
    property LineSegment[Index: OleVariant]: ILineSegment readonly dispid 1;
    function  Add: ILineSegment; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILineSegment
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {64ACC86F-4B10-4897-8552-BC0A556D228B}
// *********************************************************************//
  ILineSegment = interface(IDrawingObject)
    ['{64ACC86F-4B10-4897-8552-BC0A556D228B}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Length: Double read Get_Length write Set_Length;
    property Angle: Double read Get_Angle write Set_Angle;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  ILineSegmentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {64ACC86F-4B10-4897-8552-BC0A556D228B}
// *********************************************************************//
  ILineSegmentDisp = dispinterface
    ['{64ACC86F-4B10-4897-8552-BC0A556D228B}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Length: Double dispid 5;
    property Angle: Double dispid 6;
    property Style: Integer dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IArcs
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4FCB4C17-3B9E-45E8-B83C-9284027BAA0D}
// *********************************************************************//
  IArcs = interface(IDrawingObjects)
    ['{4FCB4C17-3B9E-45E8-B83C-9284027BAA0D}']
    function  Get_Arc(Index: OleVariant): IArc; safecall;
    function  Add: IArc; safecall;
    property Arc[Index: OleVariant]: IArc read Get_Arc;
  end;

// *********************************************************************//
// DispIntf:  IArcsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4FCB4C17-3B9E-45E8-B83C-9284027BAA0D}
// *********************************************************************//
  IArcsDisp = dispinterface
    ['{4FCB4C17-3B9E-45E8-B83C-9284027BAA0D}']
    property Arc[Index: OleVariant]: IArc readonly dispid 1;
    function  Add: IArc; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IArc
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A22DFB7E-21E0-4B28-9CA1-29B7950CF256}
// *********************************************************************//
  IArc = interface(IDrawingObject)
    ['{A22DFB7E-21E0-4B28-9CA1-29B7950CF256}']
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_X3(PVal: Double); safecall;
    function  Get_X3: Double; safecall;
    procedure Set_Y3(PVal: Double); safecall;
    function  Get_Y3: Double; safecall;
    procedure Set_Angle1(PVal: Double); safecall;
    function  Get_Angle1: Double; safecall;
    procedure Set_Angle2(PVal: Double); safecall;
    function  Get_Angle2: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Radius: Double read Get_Radius write Set_Radius;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property X3: Double read Get_X3 write Set_X3;
    property Y3: Double read Get_Y3 write Set_Y3;
    property Angle1: Double read Get_Angle1 write Set_Angle1;
    property Angle2: Double read Get_Angle2 write Set_Angle2;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IArcDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A22DFB7E-21E0-4B28-9CA1-29B7950CF256}
// *********************************************************************//
  IArcDisp = dispinterface
    ['{A22DFB7E-21E0-4B28-9CA1-29B7950CF256}']
    property Radius: Double dispid 1;
    property Direction: WordBool dispid 2;
    property Xc: Double dispid 3;
    property Yc: Double dispid 4;
    property X1: Double dispid 5;
    property Y1: Double dispid 6;
    property X2: Double dispid 7;
    property Y2: Double dispid 8;
    property X3: Double dispid 9;
    property Y3: Double dispid 10;
    property Angle1: Double dispid 11;
    property Angle2: Double dispid 12;
    property Style: Integer dispid 13;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMultilines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {968D7B84-2BC1-4354-AAFE-73192E405546}
// *********************************************************************//
  IMultilines = interface(IDrawingObjects)
    ['{968D7B84-2BC1-4354-AAFE-73192E405546}']
    function  Get_Multiline(Index: OleVariant): IMultiline; safecall;
    function  Add: IMultiline; safecall;
    property Multiline[Index: OleVariant]: IMultiline read Get_Multiline;
  end;

// *********************************************************************//
// DispIntf:  IMultilinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {968D7B84-2BC1-4354-AAFE-73192E405546}
// *********************************************************************//
  IMultilinesDisp = dispinterface
    ['{968D7B84-2BC1-4354-AAFE-73192E405546}']
    property Multiline[Index: OleVariant]: IMultiline readonly dispid 1;
    function  Add: IMultiline; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMultiline
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6CCB098-5710-44E3-8198-8FAFD56C7A6F}
// *********************************************************************//
  IMultiline = interface(IDrawingObject)
    ['{F6CCB098-5710-44E3-8198-8FAFD56C7A6F}']
    procedure Set_Closed(Result: WordBool); safecall;
    function  Get_Closed: WordBool; safecall;
    function  Get_BaseContour: IContour; safecall;
    function  Get_TrackingType(VertexIndex: Integer): ksMlVertexTrackingEnum; safecall;
    procedure Set_TrackingType(VertexIndex: Integer; Val: ksMlVertexTrackingEnum); safecall;
    function  Get_VertexLimiter(VertexIndex: Integer): ksMlVertexLimiterEnum; safecall;
    procedure Set_VertexLimiter(VertexIndex: Integer; PVal: ksMlVertexLimiterEnum); safecall;
    function  Get_VertexDirection(VertexIndex: Integer): WordBool; safecall;
    procedure Set_VertexDirection(VertexIndex: Integer; PVal: WordBool); safecall;
    procedure Set_VertexRadius(VertexIndex: Integer; PVal: Double); safecall;
    function  Get_VertexRadius(VertexIndex: Integer): Double; safecall;
    function  Get_VertexStyle(VertexIndex: Integer): Integer; safecall;
    procedure Set_VertexStyle(VertexIndex: Integer; Result: Integer); safecall;
    function  Get_VertexCount: Integer; safecall;
    function  Get_EndLimiter(First: WordBool): ksMlEndLimiterEnum; safecall;
    procedure Set_EndLimiter(First: WordBool; PVal: ksMlEndLimiterEnum); safecall;
    procedure Set_EndParameter(First: WordBool; PVal: Double); safecall;
    function  Get_EndParameter(First: WordBool): Double; safecall;
    function  Get_EndStyle(First: WordBool): Integer; safecall;
    procedure Set_EndStyle(First: WordBool; Result: Integer); safecall;
    function  AddLine(Offset: Double; Style: Integer): WordBool; safecall;
    function  DeleteLine(LineIndex: Integer): WordBool; safecall;
    function  Get_LineCount: Integer; safecall;
    procedure Set_LineOffset(LineIndex: Integer; PVal: Double); safecall;
    function  Get_LineOffset(LineIndex: Integer): Double; safecall;
    function  Get_LineStyle(LineIndex: Integer): Integer; safecall;
    procedure Set_LineStyle(LineIndex: Integer; Result: Integer); safecall;
    function  FindLine(Offset: Double): Integer; safecall;
    function  Get_LineOffsets: OleVariant; safecall;
    property Closed: WordBool read Get_Closed write Set_Closed;
    property BaseContour: IContour read Get_BaseContour;
    property TrackingType[VertexIndex: Integer]: ksMlVertexTrackingEnum read Get_TrackingType write Set_TrackingType;
    property VertexLimiter[VertexIndex: Integer]: ksMlVertexLimiterEnum read Get_VertexLimiter write Set_VertexLimiter;
    property VertexDirection[VertexIndex: Integer]: WordBool read Get_VertexDirection write Set_VertexDirection;
    property VertexRadius[VertexIndex: Integer]: Double read Get_VertexRadius write Set_VertexRadius;
    property VertexStyle[VertexIndex: Integer]: Integer read Get_VertexStyle write Set_VertexStyle;
    property VertexCount: Integer read Get_VertexCount;
    property EndLimiter[First: WordBool]: ksMlEndLimiterEnum read Get_EndLimiter write Set_EndLimiter;
    property EndParameter[First: WordBool]: Double read Get_EndParameter write Set_EndParameter;
    property EndStyle[First: WordBool]: Integer read Get_EndStyle write Set_EndStyle;
    property LineCount: Integer read Get_LineCount;
    property LineOffset[LineIndex: Integer]: Double read Get_LineOffset write Set_LineOffset;
    property LineStyle[LineIndex: Integer]: Integer read Get_LineStyle write Set_LineStyle;
    property LineOffsets: OleVariant read Get_LineOffsets;
  end;

// *********************************************************************//
// DispIntf:  IMultilineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6CCB098-5710-44E3-8198-8FAFD56C7A6F}
// *********************************************************************//
  IMultilineDisp = dispinterface
    ['{F6CCB098-5710-44E3-8198-8FAFD56C7A6F}']
    property Closed: WordBool dispid 1;
    property BaseContour: IContour readonly dispid 2;
    property TrackingType[VertexIndex: Integer]: ksMlVertexTrackingEnum dispid 3;
    property VertexLimiter[VertexIndex: Integer]: ksMlVertexLimiterEnum dispid 4;
    property VertexDirection[VertexIndex: Integer]: WordBool dispid 5;
    property VertexRadius[VertexIndex: Integer]: Double dispid 6;
    property VertexStyle[VertexIndex: Integer]: Integer dispid 7;
    property VertexCount: Integer readonly dispid 8;
    property EndLimiter[First: WordBool]: ksMlEndLimiterEnum dispid 9;
    property EndParameter[First: WordBool]: Double dispid 10;
    property EndStyle[First: WordBool]: Integer dispid 11;
    function  AddLine(Offset: Double; Style: Integer): WordBool; dispid 12;
    function  DeleteLine(LineIndex: Integer): WordBool; dispid 13;
    property LineCount: Integer readonly dispid 14;
    property LineOffset[LineIndex: Integer]: Double dispid 15;
    property LineStyle[LineIndex: Integer]: Integer dispid 16;
    function  FindLine(Offset: Double): Integer; dispid 17;
    property LineOffsets: OleVariant readonly dispid 18;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IContour
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E79F5A53-F456-4996-B620-16B725F134FB}
// *********************************************************************//
  IContour = interface(IKompasAPIObject)
    ['{E79F5A53-F456-4996-B620-16B725F134FB}']
    procedure Set_Closed(Result: WordBool); safecall;
    function  Get_Closed: WordBool; safecall;
    function  AddSegment(Type_: ksContourSegmentEnum): IKompasAPIObject; safecall;
    function  Get_Segment(Index: Integer): IKompasAPIObject; safecall;
    function  CopyCurve(const Curve: IDrawingObject; DeleteSource: WordBool): WordBool; safecall;
    function  Get_Count: Integer; safecall;
    function  Get_TmpObjects: OleVariant; safecall;
    function  CopySegments(Val: OleVariant; DeleteSource: WordBool): WordBool; safecall;
    function  Clear: WordBool; safecall;
    property Closed: WordBool read Get_Closed write Set_Closed;
    property Segment[Index: Integer]: IKompasAPIObject read Get_Segment;
    property Count: Integer read Get_Count;
    property TmpObjects: OleVariant read Get_TmpObjects;
  end;

// *********************************************************************//
// DispIntf:  IContourDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E79F5A53-F456-4996-B620-16B725F134FB}
// *********************************************************************//
  IContourDisp = dispinterface
    ['{E79F5A53-F456-4996-B620-16B725F134FB}']
    property Closed: WordBool dispid 2001;
    function  AddSegment(Type_: ksContourSegmentEnum): IKompasAPIObject; dispid 2002;
    property Segment[Index: Integer]: IKompasAPIObject readonly dispid 2003;
    function  CopyCurve(const Curve: IDrawingObject; DeleteSource: WordBool): WordBool; dispid 2004;
    property Count: Integer readonly dispid 2005;
    property TmpObjects: OleVariant readonly dispid 2006;
    function  CopySegments(Val: OleVariant; DeleteSource: WordBool): WordBool; dispid 2007;
    function  Clear: WordBool; dispid 2008;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingContours
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DBA3626C-12BE-4BFF-8D42-B01A78666BC9}
// *********************************************************************//
  IDrawingContours = interface(IDrawingObjects)
    ['{DBA3626C-12BE-4BFF-8D42-B01A78666BC9}']
    function  Get_DrawingContour(Index: OleVariant): IDrawingContour; safecall;
    function  Add: IDrawingContour; safecall;
    property DrawingContour[Index: OleVariant]: IDrawingContour read Get_DrawingContour;
  end;

// *********************************************************************//
// DispIntf:  IDrawingContoursDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DBA3626C-12BE-4BFF-8D42-B01A78666BC9}
// *********************************************************************//
  IDrawingContoursDisp = dispinterface
    ['{DBA3626C-12BE-4BFF-8D42-B01A78666BC9}']
    property DrawingContour[Index: OleVariant]: IDrawingContour readonly dispid 1;
    function  Add: IDrawingContour; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingContour
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {25509C3A-7B46-4E3F-B0E8-0E61B7548664}
// *********************************************************************//
  IDrawingContour = interface(IDrawingObject)
    ['{25509C3A-7B46-4E3F-B0E8-0E61B7548664}']
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IDrawingContourDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {25509C3A-7B46-4E3F-B0E8-0E61B7548664}
// *********************************************************************//
  IDrawingContourDisp = dispinterface
    ['{25509C3A-7B46-4E3F-B0E8-0E61B7548664}']
    property Style: Integer dispid 1;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICircles
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C8CA9255-E5FE-4396-9C3F-75EE7377C508}
// *********************************************************************//
  ICircles = interface(IDrawingObjects)
    ['{C8CA9255-E5FE-4396-9C3F-75EE7377C508}']
    function  Get_Circle(Index: OleVariant): ICircle; safecall;
    function  Add: ICircle; safecall;
    property Circle[Index: OleVariant]: ICircle read Get_Circle;
  end;

// *********************************************************************//
// DispIntf:  ICirclesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C8CA9255-E5FE-4396-9C3F-75EE7377C508}
// *********************************************************************//
  ICirclesDisp = dispinterface
    ['{C8CA9255-E5FE-4396-9C3F-75EE7377C508}']
    property Circle[Index: OleVariant]: ICircle readonly dispid 1;
    function  Add: ICircle; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICircle
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C952F95-DFED-4EEE-B39A-6699EDE08676}
// *********************************************************************//
  ICircle = interface(IDrawingObject)
    ['{5C952F95-DFED-4EEE-B39A-6699EDE08676}']
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Radius: Double read Get_Radius write Set_Radius;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  ICircleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C952F95-DFED-4EEE-B39A-6699EDE08676}
// *********************************************************************//
  ICircleDisp = dispinterface
    ['{5C952F95-DFED-4EEE-B39A-6699EDE08676}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property X: Double dispid 3;
    property Y: Double dispid 4;
    property Radius: Double dispid 5;
    property Style: Integer dispid 6;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoints
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8C6846A4-EE3B-4C00-A708-5C0FD01E21B7}
// *********************************************************************//
  IPoints = interface(IDrawingObjects)
    ['{8C6846A4-EE3B-4C00-A708-5C0FD01E21B7}']
    function  Get_Point(Index: OleVariant): IPoint; safecall;
    function  Add: IPoint; safecall;
    property Point[Index: OleVariant]: IPoint read Get_Point;
  end;

// *********************************************************************//
// DispIntf:  IPointsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8C6846A4-EE3B-4C00-A708-5C0FD01E21B7}
// *********************************************************************//
  IPointsDisp = dispinterface
    ['{8C6846A4-EE3B-4C00-A708-5C0FD01E21B7}']
    property Point[Index: OleVariant]: IPoint readonly dispid 1;
    function  Add: IPoint; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPoint
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D0C19C87-14E7-401D-AEF5-A2E88E899F6E}
// *********************************************************************//
  IPoint = interface(IDrawingObject)
    ['{D0C19C87-14E7-401D-AEF5-A2E88E899F6E}']
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(PVal: Integer); safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Angle: Double read Get_Angle write Set_Angle;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IPointDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D0C19C87-14E7-401D-AEF5-A2E88E899F6E}
// *********************************************************************//
  IPointDisp = dispinterface
    ['{D0C19C87-14E7-401D-AEF5-A2E88E899F6E}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Angle: Double dispid 3;
    property Style: Integer dispid 4;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBeziers
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {57944ECC-5491-4551-9DB9-FABC45125A63}
// *********************************************************************//
  IBeziers = interface(IDrawingObjects)
    ['{57944ECC-5491-4551-9DB9-FABC45125A63}']
    function  Get_Bezier(Index: OleVariant): IBezier; safecall;
    function  Add: IBezier; safecall;
    property Bezier[Index: OleVariant]: IBezier read Get_Bezier;
  end;

// *********************************************************************//
// DispIntf:  IBeziersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {57944ECC-5491-4551-9DB9-FABC45125A63}
// *********************************************************************//
  IBeziersDisp = dispinterface
    ['{57944ECC-5491-4551-9DB9-FABC45125A63}']
    property Bezier[Index: OleVariant]: IBezier readonly dispid 1;
    function  Add: IBezier; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBezier
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6D51EC19-200C-47A2-AE55-0593AD746851}
// *********************************************************************//
  IBezier = interface(IDrawingObject)
    ['{6D51EC19-200C-47A2-AE55-0593AD746851}']
    procedure Set_Closed(Result: WordBool); safecall;
    function  Get_Closed: WordBool; safecall;
    function  Get_PointsCount: Integer; safecall;
    procedure Set_Points(AllPoints: WordBool; Points: OleVariant); safecall;
    function  Get_Points(AllPoints: WordBool): OleVariant; safecall;
    function  AddPoint(Index: Integer; XBase: Double; YBase: Double; var XLeft: Double; 
                       var YLeft: Double; var XRight: Double; var YRight: Double): WordBool; safecall;
    function  GetPoint(Index: Integer; out XBase: Double; out YBase: Double; out XLeft: Double; 
                       out YLeft: Double; out XRight: Double; out YRight: Double): WordBool; safecall;
    function  DeletePoint(Index: Integer): WordBool; safecall;
    function  Clear: WordBool; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Closed: WordBool read Get_Closed write Set_Closed;
    property PointsCount: Integer read Get_PointsCount;
    property Points[AllPoints: WordBool]: OleVariant read Get_Points write Set_Points;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IBezierDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {6D51EC19-200C-47A2-AE55-0593AD746851}
// *********************************************************************//
  IBezierDisp = dispinterface
    ['{6D51EC19-200C-47A2-AE55-0593AD746851}']
    property Closed: WordBool dispid 1;
    property PointsCount: Integer readonly dispid 2;
    property Points[AllPoints: WordBool]: OleVariant dispid 3;
    function  AddPoint(Index: Integer; XBase: Double; YBase: Double; var XLeft: Double; 
                       var YLeft: Double; var XRight: Double; var YRight: Double): WordBool; dispid 4;
    function  GetPoint(Index: Integer; out XBase: Double; out YBase: Double; out XLeft: Double; 
                       out YLeft: Double; out XRight: Double; out YRight: Double): WordBool; dispid 5;
    function  DeletePoint(Index: Integer): WordBool; dispid 6;
    function  Clear: WordBool; dispid 7;
    property Style: Integer dispid 8;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMacroObjects
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5B3F5454-160A-4981-B093-890E9A719AE3}
// *********************************************************************//
  IMacroObjects = interface(IDrawingObjects)
    ['{5B3F5454-160A-4981-B093-890E9A719AE3}']
    function  Get_MacroObject(Index: OleVariant): IMacroObject; safecall;
    function  Add(MultyLayer: WordBool): IMacroObject; safecall;
    property MacroObject[Index: OleVariant]: IMacroObject read Get_MacroObject;
  end;

// *********************************************************************//
// DispIntf:  IMacroObjectsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5B3F5454-160A-4981-B093-890E9A719AE3}
// *********************************************************************//
  IMacroObjectsDisp = dispinterface
    ['{5B3F5454-160A-4981-B093-890E9A719AE3}']
    property MacroObject[Index: OleVariant]: IMacroObject readonly dispid 1;
    function  Add(MultyLayer: WordBool): IMacroObject; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {889A9B9C-7533-4EC5-8E2C-5ECF8228B06F}
// *********************************************************************//
  ILines = interface(IDrawingObjects)
    ['{889A9B9C-7533-4EC5-8E2C-5ECF8228B06F}']
    function  Get_Line(Index: OleVariant): ILine; safecall;
    function  Add: ILine; safecall;
    property Line[Index: OleVariant]: ILine read Get_Line;
  end;

// *********************************************************************//
// DispIntf:  ILinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {889A9B9C-7533-4EC5-8E2C-5ECF8228B06F}
// *********************************************************************//
  ILinesDisp = dispinterface
    ['{889A9B9C-7533-4EC5-8E2C-5ECF8228B06F}']
    property Line[Index: OleVariant]: ILine readonly dispid 1;
    function  Add: ILine; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3EA0DA9B-F2C0-40C4-BE36-7103509A9389}
// *********************************************************************//
  ILine = interface(IDrawingObject)
    ['{3EA0DA9B-F2C0-40C4-BE36-7103509A9389}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  ILineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3EA0DA9B-F2C0-40C4-BE36-7103509A9389}
// *********************************************************************//
  ILineDisp = dispinterface
    ['{3EA0DA9B-F2C0-40C4-BE36-7103509A9389}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Angle: Double dispid 5;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPolyLines2D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D1A9CB2D-A259-4CCC-9CD4-FA006494BCA7}
// *********************************************************************//
  IPolyLines2D = interface(IDrawingObjects)
    ['{D1A9CB2D-A259-4CCC-9CD4-FA006494BCA7}']
    function  Get_PolyLine2D(Index: OleVariant): IPolyLine2D; safecall;
    function  Add: IPolyLine2D; safecall;
    property PolyLine2D[Index: OleVariant]: IPolyLine2D read Get_PolyLine2D;
  end;

// *********************************************************************//
// DispIntf:  IPolyLines2DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D1A9CB2D-A259-4CCC-9CD4-FA006494BCA7}
// *********************************************************************//
  IPolyLines2DDisp = dispinterface
    ['{D1A9CB2D-A259-4CCC-9CD4-FA006494BCA7}']
    property PolyLine2D[Index: OleVariant]: IPolyLine2D readonly dispid 1;
    function  Add: IPolyLine2D; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IPolyLine2D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4D0DA413-9507-4795-896F-E049FA6E44DD}
// *********************************************************************//
  IPolyLine2D = interface(IDrawingObject)
    ['{4D0DA413-9507-4795-896F-E049FA6E44DD}']
    procedure Set_Closed(Result: WordBool); safecall;
    function  Get_Closed: WordBool; safecall;
    function  Get_PointsCount: Integer; safecall;
    procedure Set_Points(Points: OleVariant); safecall;
    function  Get_Points: OleVariant; safecall;
    function  AddPoint(Index: Integer; X: Double; Y: Double): WordBool; safecall;
    function  GetPoint(Index: Integer; out X: Double; out Y: Double): WordBool; safecall;
    function  DeletePoint(Index: Integer): WordBool; safecall;
    function  Clear: WordBool; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Closed: WordBool read Get_Closed write Set_Closed;
    property PointsCount: Integer read Get_PointsCount;
    property Points: OleVariant read Get_Points write Set_Points;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IPolyLine2DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4D0DA413-9507-4795-896F-E049FA6E44DD}
// *********************************************************************//
  IPolyLine2DDisp = dispinterface
    ['{4D0DA413-9507-4795-896F-E049FA6E44DD}']
    property Closed: WordBool dispid 1;
    property PointsCount: Integer readonly dispid 2;
    property Points: OleVariant dispid 3;
    function  AddPoint(Index: Integer; X: Double; Y: Double): WordBool; dispid 4;
    function  GetPoint(Index: Integer; out X: Double; out Y: Double): WordBool; dispid 5;
    function  DeletePoint(Index: Integer): WordBool; dispid 6;
    function  Clear: WordBool; dispid 7;
    property Style: Integer dispid 8;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: INurbses
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {88ECED7C-181C-4D9F-84DE-44B2E360F278}
// *********************************************************************//
  INurbses = interface(IDrawingObjects)
    ['{88ECED7C-181C-4D9F-84DE-44B2E360F278}']
    function  Get_Nurbs(Index: OleVariant): INurbs; safecall;
    function  Add: INurbs; safecall;
    function  Convert(const Curve: IDrawingObject): INurbs; safecall;
    property Nurbs[Index: OleVariant]: INurbs read Get_Nurbs;
  end;

// *********************************************************************//
// DispIntf:  INurbsesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {88ECED7C-181C-4D9F-84DE-44B2E360F278}
// *********************************************************************//
  INurbsesDisp = dispinterface
    ['{88ECED7C-181C-4D9F-84DE-44B2E360F278}']
    property Nurbs[Index: OleVariant]: INurbs readonly dispid 1;
    function  Add: INurbs; dispid 2;
    function  Convert(const Curve: IDrawingObject): INurbs; dispid 3;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: INurbs
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EE1AB9F4-B127-4303-A30D-C3509F6D10CD}
// *********************************************************************//
  INurbs = interface(IDrawingObject)
    ['{EE1AB9F4-B127-4303-A30D-C3509F6D10CD}']
    procedure Set_Closed(Result: WordBool); safecall;
    function  Get_Closed: WordBool; safecall;
    procedure Set_Degree(Result: Integer); safecall;
    function  Get_Degree: Integer; safecall;
    function  Get_Periodic: WordBool; safecall;
    function  Get_PointsCount: Integer; safecall;
    function  SetNurbsParams(Points: OleVariant; Weight: OleVariant; Knots: OleVariant; 
                             Degree: Integer; Closed: WordBool): WordBool; safecall;
    function  GetNurbsParams(out Points: OleVariant; out Weight: OleVariant; out Knots: OleVariant): WordBool; safecall;
    function  AddPoint(Index: Integer; X: Double; Y: Double; Weight: Double): WordBool; safecall;
    function  GetPoint(Index: Integer; out X: Double; out Y: Double; out Weight: Double): WordBool; safecall;
    function  DeletePoint(Index: Integer): WordBool; safecall;
    function  Clear: WordBool; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Closed: WordBool read Get_Closed write Set_Closed;
    property Degree: Integer read Get_Degree write Set_Degree;
    property Periodic: WordBool read Get_Periodic;
    property PointsCount: Integer read Get_PointsCount;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  INurbsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EE1AB9F4-B127-4303-A30D-C3509F6D10CD}
// *********************************************************************//
  INurbsDisp = dispinterface
    ['{EE1AB9F4-B127-4303-A30D-C3509F6D10CD}']
    property Closed: WordBool dispid 1;
    property Degree: Integer dispid 2;
    property Periodic: WordBool readonly dispid 3;
    property PointsCount: Integer readonly dispid 4;
    function  SetNurbsParams(Points: OleVariant; Weight: OleVariant; Knots: OleVariant; 
                             Degree: Integer; Closed: WordBool): WordBool; dispid 5;
    function  GetNurbsParams(out Points: OleVariant; out Weight: OleVariant; out Knots: OleVariant): WordBool; dispid 6;
    function  AddPoint(Index: Integer; X: Double; Y: Double; Weight: Double): WordBool; dispid 7;
    function  GetPoint(Index: Integer; out X: Double; out Y: Double; out Weight: Double): WordBool; dispid 8;
    function  DeletePoint(Index: Integer): WordBool; dispid 9;
    function  Clear: WordBool; dispid 10;
    property Style: Integer dispid 11;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRasters
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C6E4E32D-E077-4B14-B9DE-041BD628C38C}
// *********************************************************************//
  IRasters = interface(IDrawingObjects)
    ['{C6E4E32D-E077-4B14-B9DE-041BD628C38C}']
    function  Get_Raster(Index: OleVariant): IRaster; safecall;
    function  Add: IRaster; safecall;
    property Raster[Index: OleVariant]: IRaster read Get_Raster;
  end;

// *********************************************************************//
// DispIntf:  IRastersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C6E4E32D-E077-4B14-B9DE-041BD628C38C}
// *********************************************************************//
  IRastersDisp = dispinterface
    ['{C6E4E32D-E077-4B14-B9DE-041BD628C38C}']
    property Raster[Index: OleVariant]: IRaster readonly dispid 1;
    function  Add: IRaster; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRaster
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DEED8D7B-404B-4F17-B42A-2F5E64818D0A}
// *********************************************************************//
  IRaster = interface(IDrawingObject)
    ['{DEED8D7B-404B-4F17-B42A-2F5E64818D0A}']
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; safecall;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; safecall;
    procedure Set_Scale(PVal: Double); safecall;
    function  Get_Scale: Double; safecall;
    procedure Set_FileName(const PVal: WideString); safecall;
    function  Get_FileName: WideString; safecall;
    procedure Set_InsertionType(PVal: WordBool); safecall;
    function  Get_InsertionType: WordBool; safecall;
    procedure Set_Resolution(PVal: Double); safecall;
    function  Get_Resolution: Double; safecall;
    procedure Set_DisplayModePartial(PVal: WordBool); safecall;
    function  Get_DisplayModePartial: WordBool; safecall;
    function  Get_Height: Double; safecall;
    procedure Set_Height(PVal: Double); safecall;
    function  Get_Width: Double; safecall;
    procedure Set_Width(PVal: Double); safecall;
    function  Get_SourceHeight: Double; safecall;
    function  Get_SourceWidth: Double; safecall;
    function  Get_Palette: Integer; safecall;
    function  Get_IsEnableChangeResolution: WordBool; safecall;
    function  Get_IsCutBoundarySet: WordBool; safecall;
    property Scale: Double read Get_Scale write Set_Scale;
    property FileName: WideString read Get_FileName write Set_FileName;
    property InsertionType: WordBool read Get_InsertionType write Set_InsertionType;
    property Resolution: Double read Get_Resolution write Set_Resolution;
    property DisplayModePartial: WordBool read Get_DisplayModePartial write Set_DisplayModePartial;
    property Height: Double read Get_Height write Set_Height;
    property Width: Double read Get_Width write Set_Width;
    property SourceHeight: Double read Get_SourceHeight;
    property SourceWidth: Double read Get_SourceWidth;
    property Palette: Integer read Get_Palette;
    property IsEnableChangeResolution: WordBool read Get_IsEnableChangeResolution;
    property IsCutBoundarySet: WordBool read Get_IsCutBoundarySet;
  end;

// *********************************************************************//
// DispIntf:  IRasterDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DEED8D7B-404B-4F17-B42A-2F5E64818D0A}
// *********************************************************************//
  IRasterDisp = dispinterface
    ['{DEED8D7B-404B-4F17-B42A-2F5E64818D0A}']
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; dispid 1;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; dispid 2;
    property Scale: Double dispid 3;
    property FileName: WideString dispid 4;
    property InsertionType: WordBool dispid 5;
    property Resolution: Double dispid 6;
    property DisplayModePartial: WordBool dispid 7;
    property Height: Double dispid 8;
    property Width: Double dispid 9;
    property SourceHeight: Double readonly dispid 10;
    property SourceWidth: Double readonly dispid 11;
    property Palette: Integer readonly dispid 12;
    property IsEnableChangeResolution: WordBool readonly dispid 13;
    property IsCutBoundarySet: WordBool readonly dispid 14;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IOleDrawingObjects
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E7A8DD07-CD6B-45A6-B6AF-155A674BC7E4}
// *********************************************************************//
  IOleDrawingObjects = interface(IDrawingObjects)
    ['{E7A8DD07-CD6B-45A6-B6AF-155A674BC7E4}']
    function  Get_OleDrawingObject(Index: OleVariant): IOleDrawingObject; safecall;
    function  Add: IOleDrawingObject; safecall;
    property OleDrawingObject[Index: OleVariant]: IOleDrawingObject read Get_OleDrawingObject;
  end;

// *********************************************************************//
// DispIntf:  IOleDrawingObjectsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E7A8DD07-CD6B-45A6-B6AF-155A674BC7E4}
// *********************************************************************//
  IOleDrawingObjectsDisp = dispinterface
    ['{E7A8DD07-CD6B-45A6-B6AF-155A674BC7E4}']
    property OleDrawingObject[Index: OleVariant]: IOleDrawingObject readonly dispid 1;
    function  Add: IOleDrawingObject; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IOleDrawingObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9A0ECE23-7B60-44E0-9728-C56CAAA455A2}
// *********************************************************************//
  IOleDrawingObject = interface(IDrawingObject)
    ['{9A0ECE23-7B60-44E0-9728-C56CAAA455A2}']
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; safecall;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; safecall;
    procedure Set_Scale(PVal: Double); safecall;
    function  Get_Scale: Double; safecall;
    procedure Set_ClassId(const PVal: WideString); safecall;
    function  Get_ClassId: WideString; safecall;
    procedure Set_FileName(const PVal: WideString); safecall;
    function  Get_FileName: WideString; safecall;
    procedure Set_Link(PVal: WordBool); safecall;
    function  Get_Link: WordBool; safecall;
    procedure Set_InsertionType(PVal: WordBool); safecall;
    function  Get_InsertionType: WordBool; safecall;
    function  DoVerb(iVerb: Integer): IDispatch; safecall;
    function  Close(Save: WordBool): WordBool; safecall;
    property Scale: Double read Get_Scale write Set_Scale;
    property ClassId: WideString read Get_ClassId write Set_ClassId;
    property FileName: WideString read Get_FileName write Set_FileName;
    property Link: WordBool read Get_Link write Set_Link;
    property InsertionType: WordBool read Get_InsertionType write Set_InsertionType;
  end;

// *********************************************************************//
// DispIntf:  IOleDrawingObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9A0ECE23-7B60-44E0-9728-C56CAAA455A2}
// *********************************************************************//
  IOleDrawingObjectDisp = dispinterface
    ['{9A0ECE23-7B60-44E0-9728-C56CAAA455A2}']
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; dispid 1;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; dispid 2;
    property Scale: Double dispid 3;
    property ClassId: WideString dispid 4;
    property FileName: WideString dispid 5;
    property Link: WordBool dispid 6;
    property InsertionType: WordBool dispid 7;
    function  DoVerb(iVerb: Integer): IDispatch; dispid 8;
    function  Close(Save: WordBool): WordBool; dispid 9;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEllipses
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {47633C44-93BB-4F41-A6CA-4F8CCAEA0659}
// *********************************************************************//
  IEllipses = interface(IDrawingObjects)
    ['{47633C44-93BB-4F41-A6CA-4F8CCAEA0659}']
    function  Get_Ellipse(Index: OleVariant): IEllipse; safecall;
    function  Add: IEllipse; safecall;
    property Ellipse[Index: OleVariant]: IEllipse read Get_Ellipse;
  end;

// *********************************************************************//
// DispIntf:  IEllipsesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {47633C44-93BB-4F41-A6CA-4F8CCAEA0659}
// *********************************************************************//
  IEllipsesDisp = dispinterface
    ['{47633C44-93BB-4F41-A6CA-4F8CCAEA0659}']
    property Ellipse[Index: OleVariant]: IEllipse readonly dispid 1;
    function  Add: IEllipse; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEllipse
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F60C9107-D8E2-433C-A0E3-A4E508D09353}
// *********************************************************************//
  IEllipse = interface(IDrawingObject)
    ['{F60C9107-D8E2-433C-A0E3-A4E508D09353}']
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_SemiAxisA(PVal: Double); safecall;
    function  Get_SemiAxisA: Double; safecall;
    procedure Set_SemiAxisB(PVal: Double); safecall;
    function  Get_SemiAxisB: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property SemiAxisA: Double read Get_SemiAxisA write Set_SemiAxisA;
    property SemiAxisB: Double read Get_SemiAxisB write Set_SemiAxisB;
    property Angle: Double read Get_Angle write Set_Angle;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IEllipseDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F60C9107-D8E2-433C-A0E3-A4E508D09353}
// *********************************************************************//
  IEllipseDisp = dispinterface
    ['{F60C9107-D8E2-433C-A0E3-A4E508D09353}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property X1: Double dispid 3;
    property Y1: Double dispid 4;
    property X2: Double dispid 5;
    property Y2: Double dispid 6;
    property SemiAxisA: Double dispid 7;
    property SemiAxisB: Double dispid 8;
    property Angle: Double dispid 9;
    property Style: Integer dispid 10;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEllipseArcs
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CC5B7FCB-B887-4A47-AE6B-2522DFA24433}
// *********************************************************************//
  IEllipseArcs = interface(IDrawingObjects)
    ['{CC5B7FCB-B887-4A47-AE6B-2522DFA24433}']
    function  Get_EllipseArc(Index: OleVariant): IEllipseArc; safecall;
    function  Add: IEllipseArc; safecall;
    property EllipseArc[Index: OleVariant]: IEllipseArc read Get_EllipseArc;
  end;

// *********************************************************************//
// DispIntf:  IEllipseArcsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CC5B7FCB-B887-4A47-AE6B-2522DFA24433}
// *********************************************************************//
  IEllipseArcsDisp = dispinterface
    ['{CC5B7FCB-B887-4A47-AE6B-2522DFA24433}']
    property EllipseArc[Index: OleVariant]: IEllipseArc readonly dispid 1;
    function  Add: IEllipseArc; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEllipseArc
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {320D837F-0B27-45B0-98B4-9D21156E9857}
// *********************************************************************//
  IEllipseArc = interface(IDrawingObject)
    ['{320D837F-0B27-45B0-98B4-9D21156E9857}']
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_T1(PVal: Double); safecall;
    function  Get_T1: Double; safecall;
    procedure Set_T2(PVal: Double); safecall;
    function  Get_T2: Double; safecall;
    procedure Set_Angle1(PVal: Double); safecall;
    function  Get_Angle1: Double; safecall;
    procedure Set_Angle2(PVal: Double); safecall;
    function  Get_Angle2: Double; safecall;
    procedure Set_SemiAxisA(PVal: Double); safecall;
    function  Get_SemiAxisA: Double; safecall;
    procedure Set_SemiAxisB(PVal: Double); safecall;
    function  Get_SemiAxisB: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property T1: Double read Get_T1 write Set_T1;
    property T2: Double read Get_T2 write Set_T2;
    property Angle1: Double read Get_Angle1 write Set_Angle1;
    property Angle2: Double read Get_Angle2 write Set_Angle2;
    property SemiAxisA: Double read Get_SemiAxisA write Set_SemiAxisA;
    property SemiAxisB: Double read Get_SemiAxisB write Set_SemiAxisB;
    property Angle: Double read Get_Angle write Set_Angle;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IEllipseArcDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {320D837F-0B27-45B0-98B4-9D21156E9857}
// *********************************************************************//
  IEllipseArcDisp = dispinterface
    ['{320D837F-0B27-45B0-98B4-9D21156E9857}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property T1: Double dispid 3;
    property T2: Double dispid 4;
    property Angle1: Double dispid 5;
    property Angle2: Double dispid 6;
    property SemiAxisA: Double dispid 7;
    property SemiAxisB: Double dispid 8;
    property Angle: Double dispid 9;
    property Direction: WordBool dispid 10;
    property Style: Integer dispid 11;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRectangles
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D6BC2EE9-249F-4961-89A7-88DA854F35FE}
// *********************************************************************//
  IRectangles = interface(IDrawingObjects)
    ['{D6BC2EE9-249F-4961-89A7-88DA854F35FE}']
    function  Get_Rectangle(Index: OleVariant): IRectangle; safecall;
    function  Add: IRectangle; safecall;
    property Rectangle[Index: OleVariant]: IRectangle read Get_Rectangle;
  end;

// *********************************************************************//
// DispIntf:  IRectanglesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D6BC2EE9-249F-4961-89A7-88DA854F35FE}
// *********************************************************************//
  IRectanglesDisp = dispinterface
    ['{D6BC2EE9-249F-4961-89A7-88DA854F35FE}']
    property Rectangle[Index: OleVariant]: IRectangle readonly dispid 1;
    function  Add: IRectangle; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRectangle
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {42F9FC58-FEA0-4E52-A604-1A00985AB772}
// *********************************************************************//
  IRectangle = interface(IDrawingObject)
    ['{42F9FC58-FEA0-4E52-A604-1A00985AB772}']
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Height(PVal: Double); safecall;
    function  Get_Height: Double; safecall;
    procedure Set_Width(PVal: Double); safecall;
    function  Get_Width: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    function  GetCorner(Index: Integer; out Type_: ksCornerTypeEnum; out L1: Double; out L2: Double): WordBool; safecall;
    function  SetCorner(Index: Integer; Type_: ksCornerTypeEnum; L1: Double; L2: Double): WordBool; safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Angle: Double read Get_Angle write Set_Angle;
    property Height: Double read Get_Height write Set_Height;
    property Width: Double read Get_Width write Set_Width;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IRectangleDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {42F9FC58-FEA0-4E52-A604-1A00985AB772}
// *********************************************************************//
  IRectangleDisp = dispinterface
    ['{42F9FC58-FEA0-4E52-A604-1A00985AB772}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Angle: Double dispid 3;
    property Height: Double dispid 4;
    property Width: Double dispid 5;
    property Style: Integer dispid 6;
    function  GetCorner(Index: Integer; out Type_: ksCornerTypeEnum; out L1: Double; out L2: Double): WordBool; dispid 7;
    function  SetCorner(Index: Integer; Type_: ksCornerTypeEnum; L1: Double; L2: Double): WordBool; dispid 8;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRegularPolygons
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {80377CB2-073E-4C38-8532-C42A078BA719}
// *********************************************************************//
  IRegularPolygons = interface(IDrawingObjects)
    ['{80377CB2-073E-4C38-8532-C42A078BA719}']
    function  Get_RegularPolygon(Index: OleVariant): IRegularPolygon; safecall;
    function  Add: IRegularPolygon; safecall;
    property RegularPolygon[Index: OleVariant]: IRegularPolygon read Get_RegularPolygon;
  end;

// *********************************************************************//
// DispIntf:  IRegularPolygonsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {80377CB2-073E-4C38-8532-C42A078BA719}
// *********************************************************************//
  IRegularPolygonsDisp = dispinterface
    ['{80377CB2-073E-4C38-8532-C42A078BA719}']
    property RegularPolygon[Index: OleVariant]: IRegularPolygon readonly dispid 1;
    function  Add: IRegularPolygon; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRegularPolygon
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {51968648-F264-4904-A07F-653676AE1D35}
// *********************************************************************//
  IRegularPolygon = interface(IDrawingObject)
    ['{51968648-F264-4904-A07F-653676AE1D35}']
    procedure Set_Count(PVal: Integer); safecall;
    function  Get_Count: Integer; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Describe(PVal: WordBool); safecall;
    function  Get_Describe: WordBool; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    function  GetCorner(Index: Integer; out Type_: ksCornerTypeEnum; out L1: Double; out L2: Double): WordBool; safecall;
    function  SetCorner(Index: Integer; Type_: ksCornerTypeEnum; L1: Double; L2: Double): WordBool; safecall;
    property Count: Integer read Get_Count write Set_Count;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Angle: Double read Get_Angle write Set_Angle;
    property Radius: Double read Get_Radius write Set_Radius;
    property Describe: WordBool read Get_Describe write Set_Describe;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IRegularPolygonDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {51968648-F264-4904-A07F-653676AE1D35}
// *********************************************************************//
  IRegularPolygonDisp = dispinterface
    ['{51968648-F264-4904-A07F-653676AE1D35}']
    property Count: Integer dispid 1;
    property Xc: Double dispid 2;
    property Yc: Double dispid 3;
    property Angle: Double dispid 4;
    property Radius: Double dispid 5;
    property Describe: WordBool dispid 6;
    property Style: Integer dispid 7;
    function  GetCorner(Index: Integer; out Type_: ksCornerTypeEnum; out L1: Double; out L2: Double): WordBool; dispid 8;
    function  SetCorner(Index: Integer; Type_: ksCornerTypeEnum; L1: Double; L2: Double): WordBool; dispid 9;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEquidistants
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {86182E5E-8FA3-4283-9DC5-43D1673C80DA}
// *********************************************************************//
  IEquidistants = interface(IDrawingObjects)
    ['{86182E5E-8FA3-4283-9DC5-43D1673C80DA}']
    function  Get_Equidistant(Index: OleVariant): IEquidistant; safecall;
    function  Add: IEquidistant; safecall;
    property Equidistant[Index: OleVariant]: IEquidistant read Get_Equidistant;
  end;

// *********************************************************************//
// DispIntf:  IEquidistantsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {86182E5E-8FA3-4283-9DC5-43D1673C80DA}
// *********************************************************************//
  IEquidistantsDisp = dispinterface
    ['{86182E5E-8FA3-4283-9DC5-43D1673C80DA}']
    property Equidistant[Index: OleVariant]: IEquidistant readonly dispid 1;
    function  Add: IEquidistant; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IEquidistant
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EE6713F9-AD9A-466D-9FB9-D19235E42C95}
// *********************************************************************//
  IEquidistant = interface(IDrawingObject)
    ['{EE6713F9-AD9A-466D-9FB9-D19235E42C95}']
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Result: IDrawingObject); safecall;
    procedure Set_Side(PVal: ksEquidistantTypeEnum); safecall;
    function  Get_Side: ksEquidistantTypeEnum; safecall;
    procedure Set_CutMode(PVal: WordBool); safecall;
    function  Get_CutMode: WordBool; safecall;
    procedure Set_DegenerateSegment(PVal: WordBool); safecall;
    function  Get_DegenerateSegment: WordBool; safecall;
    procedure Set_LeftRadius(PVal: Double); safecall;
    function  Get_LeftRadius: Double; safecall;
    procedure Set_RightRadius(PVal: Double); safecall;
    function  Get_RightRadius: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property Side: ksEquidistantTypeEnum read Get_Side write Set_Side;
    property CutMode: WordBool read Get_CutMode write Set_CutMode;
    property DegenerateSegment: WordBool read Get_DegenerateSegment write Set_DegenerateSegment;
    property LeftRadius: Double read Get_LeftRadius write Set_LeftRadius;
    property RightRadius: Double read Get_RightRadius write Set_RightRadius;
    property Style: Integer read Get_Style write Set_Style;
  end;

// *********************************************************************//
// DispIntf:  IEquidistantDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EE6713F9-AD9A-466D-9FB9-D19235E42C95}
// *********************************************************************//
  IEquidistantDisp = dispinterface
    ['{EE6713F9-AD9A-466D-9FB9-D19235E42C95}']
    property BaseObject: IDrawingObject dispid 1;
    property Side: ksEquidistantTypeEnum dispid 2;
    property CutMode: WordBool dispid 3;
    property DegenerateSegment: WordBool dispid 4;
    property LeftRadius: Double dispid 5;
    property RightRadius: Double dispid 6;
    property Style: Integer dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertionObjects
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C485550B-29E3-4F2A-A85C-C2795E0F1F86}
// *********************************************************************//
  IInsertionObjects = interface(IDrawingObjects)
    ['{C485550B-29E3-4F2A-A85C-C2795E0F1F86}']
    function  Get_InsertionObject(Index: OleVariant): IInsertionObject; safecall;
    function  Add(const Definition: IInsertionDefinition): IInsertionObject; safecall;
    property InsertionObject[Index: OleVariant]: IInsertionObject read Get_InsertionObject;
  end;

// *********************************************************************//
// DispIntf:  IInsertionObjectsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C485550B-29E3-4F2A-A85C-C2795E0F1F86}
// *********************************************************************//
  IInsertionObjectsDisp = dispinterface
    ['{C485550B-29E3-4F2A-A85C-C2795E0F1F86}']
    property InsertionObject[Index: OleVariant]: IInsertionObject readonly dispid 1;
    function  Add(const Definition: IInsertionDefinition): IInsertionObject; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertionObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9E9CE68-371D-4600-9233-84D89A015C55}
// *********************************************************************//
  IInsertionObject = interface(IDrawingObject)
    ['{B9E9CE68-371D-4600-9233-84D89A015C55}']
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; safecall;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; safecall;
    procedure Set_Name(const PVal: WideString); safecall;
    function  Get_Name: WideString; safecall;
    function  Get_FileName: WideString; safecall;
    function  Get_InsertionType: ksInsertionTypeEnum; safecall;
    procedure Set_DimensionLineScale(PVal: WordBool); safecall;
    function  Get_DimensionLineScale: WordBool; safecall;
    function  Get_InsertionDefinition: IInsertionDefinition; safecall;
    procedure Set_InsertionDefinition(const PVal: IInsertionDefinition); safecall;
    property Name: WideString read Get_Name write Set_Name;
    property FileName: WideString read Get_FileName;
    property InsertionType: ksInsertionTypeEnum read Get_InsertionType;
    property DimensionLineScale: WordBool read Get_DimensionLineScale write Set_DimensionLineScale;
    property InsertionDefinition: IInsertionDefinition read Get_InsertionDefinition write Set_InsertionDefinition;
  end;

// *********************************************************************//
// DispIntf:  IInsertionObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B9E9CE68-371D-4600-9233-84D89A015C55}
// *********************************************************************//
  IInsertionObjectDisp = dispinterface
    ['{B9E9CE68-371D-4600-9233-84D89A015C55}']
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; dispid 1;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; dispid 2;
    property Name: WideString dispid 3;
    property FileName: WideString readonly dispid 4;
    property InsertionType: ksInsertionTypeEnum readonly dispid 5;
    property DimensionLineScale: WordBool dispid 6;
    property InsertionDefinition: IInsertionDefinition dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IHatches
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B7E776B0-9524-4254-9D1F-0CF8E0314A1B}
// *********************************************************************//
  IHatches = interface(IDrawingObjects)
    ['{B7E776B0-9524-4254-9D1F-0CF8E0314A1B}']
    function  Get_Hatch(Index: OleVariant): IHatch; safecall;
    function  Add: IHatch; safecall;
    property Hatch[Index: OleVariant]: IHatch read Get_Hatch;
  end;

// *********************************************************************//
// DispIntf:  IHatchesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B7E776B0-9524-4254-9D1F-0CF8E0314A1B}
// *********************************************************************//
  IHatchesDisp = dispinterface
    ['{B7E776B0-9524-4254-9D1F-0CF8E0314A1B}']
    property Hatch[Index: OleVariant]: IHatch readonly dispid 1;
    function  Add: IHatch; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IHatch
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {826C0B5B-0146-417A-8128-E581F8430F37}
// *********************************************************************//
  IHatch = interface(IDrawingObject)
    ['{826C0B5B-0146-417A-8128-E581F8430F37}']
    function  Get_X: Double; safecall;
    procedure Set_X(Result: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Y(Result: Double); safecall;
    function  Get_Side: WordBool; safecall;
    procedure Set_Side(Result: WordBool); safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Side: WordBool read Get_Side write Set_Side;
  end;

// *********************************************************************//
// DispIntf:  IHatchDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {826C0B5B-0146-417A-8128-E581F8430F37}
// *********************************************************************//
  IHatchDisp = dispinterface
    ['{826C0B5B-0146-417A-8128-E581F8430F37}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Side: WordBool dispid 3;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IColourings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {60437DAD-2688-4146-B765-3FCC55C39D0F}
// *********************************************************************//
  IColourings = interface(IDrawingObjects)
    ['{60437DAD-2688-4146-B765-3FCC55C39D0F}']
    function  Get_Colouring(Index: OleVariant): IColouring; safecall;
    function  Add: IColouring; safecall;
    property Colouring[Index: OleVariant]: IColouring read Get_Colouring;
  end;

// *********************************************************************//
// DispIntf:  IColouringsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {60437DAD-2688-4146-B765-3FCC55C39D0F}
// *********************************************************************//
  IColouringsDisp = dispinterface
    ['{60437DAD-2688-4146-B765-3FCC55C39D0F}']
    property Colouring[Index: OleVariant]: IColouring readonly dispid 1;
    function  Add: IColouring; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IColouring
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1E0EF1B5-08D3-40B6-893E-3EE7E4FAEC98}
// *********************************************************************//
  IColouring = interface(IDrawingObject)
    ['{1E0EF1B5-08D3-40B6-893E-3EE7E4FAEC98}']
    function  Get_ColouringType: ksColouringTypeEnum; safecall;
    procedure Set_ColouringType(Result: ksColouringTypeEnum); safecall;
    function  Get_Color1: Integer; safecall;
    procedure Set_Color1(Result: Integer); safecall;
    function  Get_Color2: Integer; safecall;
    procedure Set_Color2(Result: Integer); safecall;
    function  Get_Transparency1: Integer; safecall;
    procedure Set_Transparency1(PVal: Integer); safecall;
    function  Get_Transparency2: Integer; safecall;
    procedure Set_Transparency2(PVal: Integer); safecall;
    function  Get_GradientType: WordBool; safecall;
    procedure Set_GradientType(Result: WordBool); safecall;
    function  Get_GradientCount: Integer; safecall;
    procedure Set_GradientCount(Result: Integer); safecall;
    function  Get_GradientAngle: Double; safecall;
    procedure Set_GradientAngle(Result: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Xc(Result: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Yc(Result: Double); safecall;
    function  GetGradations(out Positions: OleVariant; out Colors: OleVariant; 
                            out Transparences: OleVariant; out Interpolations: OleVariant): WordBool; safecall;
    function  SetGradations(Positions: OleVariant; Colors: OleVariant; Transparences: OleVariant; 
                            Interpolations: OleVariant): WordBool; safecall;
    function  AddGradation(Position: Integer; Color: Integer; Transparency: Integer; 
                           Interpolation: WordBool): Integer; safecall;
    function  ClearGradations: WordBool; safecall;
    function  Get_GradationsCount: Integer; safecall;
    function  GetGradation(Index: Integer; out Position: Integer; out Color: Integer; 
                           out Transparency: Integer; out Interpolation: WordBool): WordBool; safecall;
    function  SetGradation(Index: Integer; Position: Integer; Color: Integer; 
                           Transparency: Integer; Interpolation: WordBool): Integer; safecall;
    function  DeleteGradation(Index: Integer): WordBool; safecall;
    function  FindPosition(Position: Integer): Integer; safecall;
    property ColouringType: ksColouringTypeEnum read Get_ColouringType write Set_ColouringType;
    property Color1: Integer read Get_Color1 write Set_Color1;
    property Color2: Integer read Get_Color2 write Set_Color2;
    property Transparency1: Integer read Get_Transparency1 write Set_Transparency1;
    property Transparency2: Integer read Get_Transparency2 write Set_Transparency2;
    property GradientType: WordBool read Get_GradientType write Set_GradientType;
    property GradientCount: Integer read Get_GradientCount write Set_GradientCount;
    property GradientAngle: Double read Get_GradientAngle write Set_GradientAngle;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property GradationsCount: Integer read Get_GradationsCount;
  end;

// *********************************************************************//
// DispIntf:  IColouringDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1E0EF1B5-08D3-40B6-893E-3EE7E4FAEC98}
// *********************************************************************//
  IColouringDisp = dispinterface
    ['{1E0EF1B5-08D3-40B6-893E-3EE7E4FAEC98}']
    property ColouringType: ksColouringTypeEnum dispid 1;
    property Color1: Integer dispid 2;
    property Color2: Integer dispid 3;
    property Transparency1: Integer dispid 4;
    property Transparency2: Integer dispid 5;
    property GradientType: WordBool dispid 6;
    property GradientCount: Integer dispid 7;
    property GradientAngle: Double dispid 8;
    property Xc: Double dispid 9;
    property Yc: Double dispid 10;
    function  GetGradations(out Positions: OleVariant; out Colors: OleVariant; 
                            out Transparences: OleVariant; out Interpolations: OleVariant): WordBool; dispid 11;
    function  SetGradations(Positions: OleVariant; Colors: OleVariant; Transparences: OleVariant; 
                            Interpolations: OleVariant): WordBool; dispid 12;
    function  AddGradation(Position: Integer; Color: Integer; Transparency: Integer; 
                           Interpolation: WordBool): Integer; dispid 13;
    function  ClearGradations: WordBool; dispid 14;
    property GradationsCount: Integer readonly dispid 15;
    function  GetGradation(Index: Integer; out Position: Integer; out Color: Integer; 
                           out Transparency: Integer; out Interpolation: WordBool): WordBool; dispid 16;
    function  SetGradation(Index: Integer; Position: Integer; Color: Integer; 
                           Transparency: Integer; Interpolation: WordBool): Integer; dispid 17;
    function  DeleteGradation(Index: Integer): WordBool; dispid 18;
    function  FindPosition(Position: Integer): Integer; dispid 19;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMark
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B5D1A0BE-8F3C-4143-B9C5-66F0CF0FE74D}
// *********************************************************************//
  IMark = interface(IDrawingObject)
    ['{B5D1A0BE-8F3C-4143-B9C5-66F0CF0FE74D}']
    function  Get_X: Double; safecall;
    procedure Set_X(Result: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Y(Result: Double); safecall;
    function  Get_AutoNumber: WordBool; safecall;
    procedure Set_AutoNumber(Result: WordBool); safecall;
    function  Get_Name: IText; safecall;
    function  Get_Number: IText; safecall;
    function  Get_TextBefore: IText; safecall;
    function  Get_TextAfter: IText; safecall;
    function  Get_TextUnder: IText; safecall;
    function  Get_Comment: WideString; safecall;
    procedure Set_Comment(const Result: WideString); safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property AutoNumber: WordBool read Get_AutoNumber write Set_AutoNumber;
    property Name: IText read Get_Name;
    property Number: IText read Get_Number;
    property TextBefore: IText read Get_TextBefore;
    property TextAfter: IText read Get_TextAfter;
    property TextUnder: IText read Get_TextUnder;
    property Comment: WideString read Get_Comment write Set_Comment;
  end;

// *********************************************************************//
// DispIntf:  IMarkDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B5D1A0BE-8F3C-4143-B9C5-66F0CF0FE74D}
// *********************************************************************//
  IMarkDisp = dispinterface
    ['{B5D1A0BE-8F3C-4143-B9C5-66F0CF0FE74D}']
    property X: Double dispid 2001;
    property Y: Double dispid 2002;
    property AutoNumber: WordBool dispid 2003;
    property Name: IText readonly dispid 2004;
    property Number: IText readonly dispid 2005;
    property TextBefore: IText readonly dispid 2006;
    property TextAfter: IText readonly dispid 2007;
    property TextUnder: IText readonly dispid 2008;
    property Comment: WideString dispid 2009;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMarks
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {47585370-56BD-4419-82D9-DB7CBFB1A252}
// *********************************************************************//
  IMarks = interface(IDrawingObjects)
    ['{47585370-56BD-4419-82D9-DB7CBFB1A252}']
    function  Get_Mark(Index: OleVariant): IMark; safecall;
    function  Add(MarkType: DrawingObjectTypeEnum): IMark; safecall;
    property Mark[Index: OleVariant]: IMark read Get_Mark;
  end;

// *********************************************************************//
// DispIntf:  IMarksDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {47585370-56BD-4419-82D9-DB7CBFB1A252}
// *********************************************************************//
  IMarksDisp = dispinterface
    ['{47585370-56BD-4419-82D9-DB7CBFB1A252}']
    property Mark[Index: OleVariant]: IMark readonly dispid 1;
    function  Add(MarkType: DrawingObjectTypeEnum): IMark; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMarkInsideForm
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E5C5A0FF-6CAB-4179-9BF3-868D96BF6AEA}
// *********************************************************************//
  IMarkInsideForm = interface(IMark)
    ['{E5C5A0FF-6CAB-4179-9BF3-868D96BF6AEA}']
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(Result: Double); safecall;
    procedure Set_Form(NewVal: ksMarkInsideFormEnum); safecall;
    function  Get_Form: ksMarkInsideFormEnum; safecall;
    procedure Set_FormGabarit(PVal: Double); safecall;
    function  Get_FormGabarit: Double; safecall;
    procedure Set_FormHeight(PVal: Double); safecall;
    function  Get_FormHeight: Double; safecall;
    procedure Set_FormStyle(PVal: Integer); safecall;
    function  Get_FormStyle: Integer; safecall;
    property Angle: Double read Get_Angle write Set_Angle;
    property Form: ksMarkInsideFormEnum read Get_Form write Set_Form;
    property FormGabarit: Double read Get_FormGabarit write Set_FormGabarit;
    property FormHeight: Double read Get_FormHeight write Set_FormHeight;
    property FormStyle: Integer read Get_FormStyle write Set_FormStyle;
  end;

// *********************************************************************//
// DispIntf:  IMarkInsideFormDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E5C5A0FF-6CAB-4179-9BF3-868D96BF6AEA}
// *********************************************************************//
  IMarkInsideFormDisp = dispinterface
    ['{E5C5A0FF-6CAB-4179-9BF3-868D96BF6AEA}']
    property Angle: Double dispid 1;
    property Form: ksMarkInsideFormEnum dispid 2;
    property FormGabarit: Double dispid 3;
    property FormHeight: Double dispid 4;
    property FormStyle: Integer dispid 5;
    property X: Double dispid 2001;
    property Y: Double dispid 2002;
    property AutoNumber: WordBool dispid 2003;
    property Name: IText readonly dispid 2004;
    property Number: IText readonly dispid 2005;
    property TextBefore: IText readonly dispid 2006;
    property TextAfter: IText readonly dispid 2007;
    property TextUnder: IText readonly dispid 2008;
    property Comment: WideString dispid 2009;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMarkOnLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5A1540F9-7388-466F-A13C-EB1133423DD9}
// *********************************************************************//
  IMarkOnLine = interface(IMark)
    ['{5A1540F9-7388-466F-A13C-EB1133423DD9}']
    function  Get_Position: ksMarkOnLinePosTypeEnum; safecall;
    procedure Set_Position(Result: ksMarkOnLinePosTypeEnum); safecall;
    function  Get_Line: IDrawingObject; safecall;
    procedure Set_Line(const Result: IDrawingObject); safecall;
    property Position: ksMarkOnLinePosTypeEnum read Get_Position write Set_Position;
    property Line: IDrawingObject read Get_Line write Set_Line;
  end;

// *********************************************************************//
// DispIntf:  IMarkOnLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5A1540F9-7388-466F-A13C-EB1133423DD9}
// *********************************************************************//
  IMarkOnLineDisp = dispinterface
    ['{5A1540F9-7388-466F-A13C-EB1133423DD9}']
    property Position: ksMarkOnLinePosTypeEnum dispid 1;
    property Line: IDrawingObject dispid 2;
    property X: Double dispid 2001;
    property Y: Double dispid 2002;
    property AutoNumber: WordBool dispid 2003;
    property Name: IText readonly dispid 2004;
    property Number: IText readonly dispid 2005;
    property TextBefore: IText readonly dispid 2006;
    property TextAfter: IText readonly dispid 2007;
    property TextUnder: IText readonly dispid 2008;
    property Comment: WideString dispid 2009;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMarkOnLeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F3D7E6A6-26EA-4D68-AD58-4DE194C47B4E}
// *********************************************************************//
  IMarkOnLeader = interface(IMark)
    ['{F3D7E6A6-26EA-4D68-AD58-4DE194C47B4E}']
    function  Get_ArrowType: ksArrowEnum; safecall;
    procedure Set_ArrowType(PVal: ksArrowEnum); safecall;
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(PVal: ksShelfDirectionEnum); safecall;
    function  Get_ParallelBranch: WordBool; safecall;
    procedure Set_ParallelBranch(PVal: WordBool); safecall;
    function  Get_BranchCount: Integer; safecall;
    procedure Set_BranchPoints(Index: Integer; PVal: OleVariant); safecall;
    function  Get_BranchPoints(Index: Integer): OleVariant; safecall;
    procedure Set_BranchBegin(Index: Integer; PVal: WordBool); safecall;
    function  Get_BranchBegin(Index: Integer): WordBool; safecall;
    procedure Set_BranchX(Index: Integer; PVal: Double); safecall;
    function  Get_BranchX(Index: Integer): Double; safecall;
    procedure Set_BranchY(Index: Integer; PVal: Double); safecall;
    function  Get_BranchY(Index: Integer): Double; safecall;
    function  Get_BranchPointsCount(Index: Integer): Integer; safecall;
    function  AddBranch(Index: Integer; Begin_: WordBool; Points: OleVariant): WordBool; safecall;
    function  AddBranchByPoint(Index: Integer; Begin_: WordBool; X: Double; Y: Double): WordBool; safecall;
    function  DeleteBranch(Index: Integer): WordBool; safecall;
    property ArrowType: ksArrowEnum read Get_ArrowType write Set_ArrowType;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property ParallelBranch: WordBool read Get_ParallelBranch write Set_ParallelBranch;
    property BranchCount: Integer read Get_BranchCount;
    property BranchPoints[Index: Integer]: OleVariant read Get_BranchPoints write Set_BranchPoints;
    property BranchBegin[Index: Integer]: WordBool read Get_BranchBegin write Set_BranchBegin;
    property BranchX[Index: Integer]: Double read Get_BranchX write Set_BranchX;
    property BranchY[Index: Integer]: Double read Get_BranchY write Set_BranchY;
    property BranchPointsCount[Index: Integer]: Integer read Get_BranchPointsCount;
  end;

// *********************************************************************//
// DispIntf:  IMarkOnLeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F3D7E6A6-26EA-4D68-AD58-4DE194C47B4E}
// *********************************************************************//
  IMarkOnLeaderDisp = dispinterface
    ['{F3D7E6A6-26EA-4D68-AD58-4DE194C47B4E}']
    property ArrowType: ksArrowEnum dispid 1;
    property ShelfDirection: ksShelfDirectionEnum dispid 2;
    property ParallelBranch: WordBool dispid 3;
    property BranchCount: Integer readonly dispid 4;
    property BranchPoints[Index: Integer]: OleVariant dispid 5;
    property BranchBegin[Index: Integer]: WordBool dispid 6;
    property BranchX[Index: Integer]: Double dispid 7;
    property BranchY[Index: Integer]: Double dispid 8;
    property BranchPointsCount[Index: Integer]: Integer readonly dispid 9;
    function  AddBranch(Index: Integer; Begin_: WordBool; Points: OleVariant): WordBool; dispid 10;
    function  AddBranchByPoint(Index: Integer; Begin_: WordBool; X: Double; Y: Double): WordBool; dispid 11;
    function  DeleteBranch(Index: Integer): WordBool; dispid 12;
    property X: Double dispid 2001;
    property Y: Double dispid 2002;
    property AutoNumber: WordBool dispid 2003;
    property Name: IText readonly dispid 2004;
    property Number: IText readonly dispid 2005;
    property TextBefore: IText readonly dispid 2006;
    property TextAfter: IText readonly dispid 2007;
    property TextUnder: IText readonly dispid 2008;
    property Comment: WideString dispid 2009;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBuildingAxis
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {123C45BF-14DE-433E-B3B0-2FB642A9A418}
// *********************************************************************//
  IBuildingAxis = interface(IDrawingObject)
    ['{123C45BF-14DE-433E-B3B0-2FB642A9A418}']
    procedure Set_DoubleMark(PVal: WordBool); safecall;
    function  Get_DoubleMark: WordBool; safecall;
    procedure Set_MarkSize(PVal: Double); safecall;
    function  Get_MarkSize: Double; safecall;
    procedure Set_DottedLength(PVal: Double); safecall;
    function  Get_DottedLength: Double; safecall;
    procedure Set_Interval(PVal: Double); safecall;
    function  Get_Interval: Double; safecall;
    procedure Set_Stroke(PVal: Double); safecall;
    function  Get_Stroke: Double; safecall;
    function  Get_Text: IText; safecall;
    function  Get_TextBefore: IText; safecall;
    function  Get_TextAfter: IText; safecall;
    procedure Set_AutoStroke(PVal: WordBool); safecall;
    function  Get_AutoStroke: WordBool; safecall;
    function  GetInsertionPoints(First: WordBool; out Points: OleVariant; 
                                 out Directions: OleVariant; out Nodes: OleVariant): WordBool; safecall;
    function  GetNodeByPoint(X: Double; Y: Double; Limit: Double): IMarkNode; safecall;
    function  AddNodeByPoint(Type_: ksMarkNodeEnum; X: Double; Y: Double): IMarkNode; safecall;
    property DoubleMark: WordBool read Get_DoubleMark write Set_DoubleMark;
    property MarkSize: Double read Get_MarkSize write Set_MarkSize;
    property DottedLength: Double read Get_DottedLength write Set_DottedLength;
    property Interval: Double read Get_Interval write Set_Interval;
    property Stroke: Double read Get_Stroke write Set_Stroke;
    property Text: IText read Get_Text;
    property TextBefore: IText read Get_TextBefore;
    property TextAfter: IText read Get_TextAfter;
    property AutoStroke: WordBool read Get_AutoStroke write Set_AutoStroke;
  end;

// *********************************************************************//
// DispIntf:  IBuildingAxisDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {123C45BF-14DE-433E-B3B0-2FB642A9A418}
// *********************************************************************//
  IBuildingAxisDisp = dispinterface
    ['{123C45BF-14DE-433E-B3B0-2FB642A9A418}']
    property DoubleMark: WordBool dispid 2001;
    property MarkSize: Double dispid 2002;
    property DottedLength: Double dispid 2003;
    property Interval: Double dispid 2004;
    property Stroke: Double dispid 2005;
    property Text: IText readonly dispid 2006;
    property TextBefore: IText readonly dispid 2007;
    property TextAfter: IText readonly dispid 2008;
    property AutoStroke: WordBool dispid 2009;
    function  GetInsertionPoints(First: WordBool; out Points: OleVariant; 
                                 out Directions: OleVariant; out Nodes: OleVariant): WordBool; dispid 2010;
    function  GetNodeByPoint(X: Double; Y: Double; Limit: Double): IMarkNode; dispid 2011;
    function  AddNodeByPoint(Type_: ksMarkNodeEnum; X: Double; Y: Double): IMarkNode; dispid 2012;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMarkNode
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5AC48E97-80B1-459F-9709-1F3F374559BE}
// *********************************************************************//
  IMarkNode = interface(IKompasAPIObject)
    ['{5AC48E97-80B1-459F-9709-1F3F374559BE}']
    procedure Set_MarkType(Val: ksMarkNodeEnum); safecall;
    function  Get_MarkType: ksMarkNodeEnum; safecall;
    procedure Set_DoubleMark(PVal: WordBool); safecall;
    function  Get_DoubleMark: WordBool; safecall;
    procedure Set_RefLength(PVal: Double); safecall;
    function  Get_RefLength: Double; safecall;
    function  Get_Text: IText; safecall;
    function  Get_MarkNodes(Left: WordBool): IMarkNodes; safecall;
    function  Delete: WordBool; safecall;
    function  GetInsertionPoints(LeftJut: WordBool; out Points: OleVariant; 
                                 out Directions: OleVariant): WordBool; safecall;
    property MarkType: ksMarkNodeEnum read Get_MarkType write Set_MarkType;
    property DoubleMark: WordBool read Get_DoubleMark write Set_DoubleMark;
    property RefLength: Double read Get_RefLength write Set_RefLength;
    property Text: IText read Get_Text;
    property MarkNodes[Left: WordBool]: IMarkNodes read Get_MarkNodes;
  end;

// *********************************************************************//
// DispIntf:  IMarkNodeDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5AC48E97-80B1-459F-9709-1F3F374559BE}
// *********************************************************************//
  IMarkNodeDisp = dispinterface
    ['{5AC48E97-80B1-459F-9709-1F3F374559BE}']
    property MarkType: ksMarkNodeEnum dispid 1;
    property DoubleMark: WordBool dispid 2;
    property RefLength: Double dispid 3;
    property Text: IText readonly dispid 4;
    property MarkNodes[Left: WordBool]: IMarkNodes readonly dispid 5;
    function  Delete: WordBool; dispid 6;
    function  GetInsertionPoints(LeftJut: WordBool; out Points: OleVariant; 
                                 out Directions: OleVariant): WordBool; dispid 7;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMarkNodes
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EB8ACD77-8008-4F89-A311-2F4712462F72}
// *********************************************************************//
  IMarkNodes = interface(IKompasCollection)
    ['{EB8ACD77-8008-4F89-A311-2F4712462F72}']
    function  Get_Item(Index: OleVariant): IMarkNode; safecall;
    function  Add(Type_: ksMarkNodeEnum; Index: OleVariant): IMarkNode; safecall;
    function  Clear: WordBool; safecall;
    property Item[Index: OleVariant]: IMarkNode read Get_Item; default;
  end;

// *********************************************************************//
// DispIntf:  IMarkNodesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EB8ACD77-8008-4F89-A311-2F4712462F72}
// *********************************************************************//
  IMarkNodesDisp = dispinterface
    ['{EB8ACD77-8008-4F89-A311-2F4712462F72}']
    property Item[Index: OleVariant]: IMarkNode readonly dispid 0; default;
    function  Add(Type_: ksMarkNodeEnum; Index: OleVariant): IMarkNode; dispid 1;
    function  Clear: WordBool; dispid 2;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBuildingAxes
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {18072E1D-1802-41F5-A434-04BB9D3F157F}
// *********************************************************************//
  IBuildingAxes = interface(IDrawingObjects)
    ['{18072E1D-1802-41F5-A434-04BB9D3F157F}']
    function  Get_BuildingAxis(Index: OleVariant): IBuildingAxis; safecall;
    function  Add(AxisType: DrawingObjectTypeEnum): IBuildingAxis; safecall;
    property BuildingAxis[Index: OleVariant]: IBuildingAxis read Get_BuildingAxis;
  end;

// *********************************************************************//
// DispIntf:  IBuildingAxesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {18072E1D-1802-41F5-A434-04BB9D3F157F}
// *********************************************************************//
  IBuildingAxesDisp = dispinterface
    ['{18072E1D-1802-41F5-A434-04BB9D3F157F}']
    property BuildingAxis[Index: OleVariant]: IBuildingAxis readonly dispid 1;
    function  Add(AxisType: DrawingObjectTypeEnum): IBuildingAxis; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IStraightAxis
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7B2820E0-2CB7-4412-9B96-F291DD790448}
// *********************************************************************//
  IStraightAxis = interface(IBuildingAxis)
    ['{7B2820E0-2CB7-4412-9B96-F291DD790448}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Jut(First: WordBool): IAxisJut; safecall;
    function  Get_MarkNodes: IMarkNodes; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Length: Double read Get_Length write Set_Length;
    property Angle: Double read Get_Angle write Set_Angle;
    property Jut[First: WordBool]: IAxisJut read Get_Jut;
    property MarkNodes: IMarkNodes read Get_MarkNodes;
  end;

// *********************************************************************//
// DispIntf:  IStraightAxisDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7B2820E0-2CB7-4412-9B96-F291DD790448}
// *********************************************************************//
  IStraightAxisDisp = dispinterface
    ['{7B2820E0-2CB7-4412-9B96-F291DD790448}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Length: Double dispid 5;
    property Angle: Double dispid 6;
    property Jut[First: WordBool]: IAxisJut readonly dispid 7;
    property MarkNodes: IMarkNodes readonly dispid 8;
    property DoubleMark: WordBool dispid 2001;
    property MarkSize: Double dispid 2002;
    property DottedLength: Double dispid 2003;
    property Interval: Double dispid 2004;
    property Stroke: Double dispid 2005;
    property Text: IText readonly dispid 2006;
    property TextBefore: IText readonly dispid 2007;
    property TextAfter: IText readonly dispid 2008;
    property AutoStroke: WordBool dispid 2009;
    function  GetInsertionPoints(First: WordBool; out Points: OleVariant; 
                                 out Directions: OleVariant; out Nodes: OleVariant): WordBool; dispid 2010;
    function  GetNodeByPoint(X: Double; Y: Double; Limit: Double): IMarkNode; dispid 2011;
    function  AddNodeByPoint(Type_: ksMarkNodeEnum; X: Double; Y: Double): IMarkNode; dispid 2012;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAxisJut
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5A22E024-F530-45DB-A3F2-CA0587BDA1B5}
// *********************************************************************//
  IAxisJut = interface(IKompasAPIObject)
    ['{5A22E024-F530-45DB-A3F2-CA0587BDA1B5}']
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_MarkOffset(PVal: Double); safecall;
    function  Get_MarkOffset: Double; safecall;
    procedure Set_BreakOffset(PVal: Double); safecall;
    function  Get_BreakOffset: Double; safecall;
    procedure Set_BreakDirection(PVal: WordBool); safecall;
    function  Get_BreakDirection: WordBool; safecall;
    procedure Set_MarkOn(PVal: WordBool); safecall;
    function  Get_MarkOn: WordBool; safecall;
    property Length: Double read Get_Length write Set_Length;
    property MarkOffset: Double read Get_MarkOffset write Set_MarkOffset;
    property BreakOffset: Double read Get_BreakOffset write Set_BreakOffset;
    property BreakDirection: WordBool read Get_BreakDirection write Set_BreakDirection;
    property MarkOn: WordBool read Get_MarkOn write Set_MarkOn;
  end;

// *********************************************************************//
// DispIntf:  IAxisJutDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5A22E024-F530-45DB-A3F2-CA0587BDA1B5}
// *********************************************************************//
  IAxisJutDisp = dispinterface
    ['{5A22E024-F530-45DB-A3F2-CA0587BDA1B5}']
    property Length: Double dispid 1;
    property MarkOffset: Double dispid 2;
    property BreakOffset: Double dispid 3;
    property BreakDirection: WordBool dispid 4;
    property MarkOn: WordBool dispid 5;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IArcAxis
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DAA9755A-3971-4713-B281-15995CBF2E56}
// *********************************************************************//
  IArcAxis = interface(IBuildingAxis)
    ['{DAA9755A-3971-4713-B281-15995CBF2E56}']
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Angle1(PVal: Double); safecall;
    function  Get_Angle1: Double; safecall;
    procedure Set_Angle2(PVal: Double); safecall;
    function  Get_Angle2: Double; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    function  Get_Jut(First: WordBool): IAxisJut; safecall;
    function  Get_MarkNodes: IMarkNodes; safecall;
    procedure Set_X3(PVal: Double); safecall;
    function  Get_X3: Double; safecall;
    procedure Set_Y3(PVal: Double); safecall;
    function  Get_Y3: Double; safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Angle1: Double read Get_Angle1 write Set_Angle1;
    property Angle2: Double read Get_Angle2 write Set_Angle2;
    property Radius: Double read Get_Radius write Set_Radius;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property Jut[First: WordBool]: IAxisJut read Get_Jut;
    property MarkNodes: IMarkNodes read Get_MarkNodes;
    property X3: Double read Get_X3 write Set_X3;
    property Y3: Double read Get_Y3 write Set_Y3;
  end;

// *********************************************************************//
// DispIntf:  IArcAxisDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DAA9755A-3971-4713-B281-15995CBF2E56}
// *********************************************************************//
  IArcAxisDisp = dispinterface
    ['{DAA9755A-3971-4713-B281-15995CBF2E56}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property X1: Double dispid 3;
    property Y1: Double dispid 4;
    property X2: Double dispid 5;
    property Y2: Double dispid 6;
    property Angle1: Double dispid 7;
    property Angle2: Double dispid 8;
    property Radius: Double dispid 9;
    property Direction: WordBool dispid 10;
    property Jut[First: WordBool]: IAxisJut readonly dispid 11;
    property MarkNodes: IMarkNodes readonly dispid 12;
    property X3: Double dispid 13;
    property Y3: Double dispid 14;
    property DoubleMark: WordBool dispid 2001;
    property MarkSize: Double dispid 2002;
    property DottedLength: Double dispid 2003;
    property Interval: Double dispid 2004;
    property Stroke: Double dispid 2005;
    property Text: IText readonly dispid 2006;
    property TextBefore: IText readonly dispid 2007;
    property TextAfter: IText readonly dispid 2008;
    property AutoStroke: WordBool dispid 2009;
    function  GetInsertionPoints(First: WordBool; out Points: OleVariant; 
                                 out Directions: OleVariant; out Nodes: OleVariant): WordBool; dispid 2010;
    function  GetNodeByPoint(X: Double; Y: Double; Limit: Double): IMarkNode; dispid 2011;
    function  AddNodeByPoint(Type_: ksMarkNodeEnum; X: Double; Y: Double): IMarkNode; dispid 2012;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICircleAxis
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D84358FB-674C-4A5D-93BA-EE5D3342097B}
// *********************************************************************//
  ICircleAxis = interface(IBuildingAxis)
    ['{D84358FB-674C-4A5D-93BA-EE5D3342097B}']
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_MarkAngle(PVal: Double); safecall;
    function  Get_MarkAngle: Double; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_MarkOn(PVal: WordBool); safecall;
    function  Get_MarkOn: WordBool; safecall;
    function  Get_BaseMarkNode: IMarkNode; safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property MarkAngle: Double read Get_MarkAngle write Set_MarkAngle;
    property Radius: Double read Get_Radius write Set_Radius;
    property MarkOn: WordBool read Get_MarkOn write Set_MarkOn;
    property BaseMarkNode: IMarkNode read Get_BaseMarkNode;
  end;

// *********************************************************************//
// DispIntf:  ICircleAxisDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {D84358FB-674C-4A5D-93BA-EE5D3342097B}
// *********************************************************************//
  ICircleAxisDisp = dispinterface
    ['{D84358FB-674C-4A5D-93BA-EE5D3342097B}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property MarkAngle: Double dispid 3;
    property Radius: Double dispid 4;
    property MarkOn: WordBool dispid 5;
    property BaseMarkNode: IMarkNode readonly dispid 6;
    property DoubleMark: WordBool dispid 2001;
    property MarkSize: Double dispid 2002;
    property DottedLength: Double dispid 2003;
    property Interval: Double dispid 2004;
    property Stroke: Double dispid 2005;
    property Text: IText readonly dispid 2006;
    property TextBefore: IText readonly dispid 2007;
    property TextAfter: IText readonly dispid 2008;
    property AutoStroke: WordBool dispid 2009;
    function  GetInsertionPoints(First: WordBool; out Points: OleVariant; 
                                 out Directions: OleVariant; out Nodes: OleVariant): WordBool; dispid 2010;
    function  GetNodeByPoint(X: Double; Y: Double; Limit: Double): IMarkNode; dispid 2011;
    function  AddNodeByPoint(Type_: ksMarkNodeEnum; X: Double; Y: Double): IMarkNode; dispid 2012;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICutUnitMarking
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2EDA58EE-DBDA-44CC-AD10-6895006D498C}
// *********************************************************************//
  ICutUnitMarking = interface(IDrawingObject)
    ['{2EDA58EE-DBDA-44CC-AD10-6895006D498C}']
    function  Get_StrokeCount: Integer; safecall;
    procedure Set_StrokeX(Index: Integer; PVal: Double); safecall;
    function  Get_StrokeX(Index: Integer): Double; safecall;
    procedure Set_StrokeY(Index: Integer; PVal: Double); safecall;
    function  Get_StrokeY(Index: Integer): Double; safecall;
    procedure Set_Stroke(Index: Integer; PVal: Double); safecall;
    function  Get_Stroke(Index: Integer): Double; safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(Result: Double); safecall;
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(Result: ksShelfDirectionEnum); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(Result: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(Result: Double); safecall;
    function  Get_TextUp: IText; safecall;
    function  Get_TextDown: IText; safecall;
    function  AddStroke(X: Double; Y: Double; Length: Double): WordBool; safecall;
    function  DeleteStroke(Index: Integer): WordBool; safecall;
    property StrokeCount: Integer read Get_StrokeCount;
    property StrokeX[Index: Integer]: Double read Get_StrokeX write Set_StrokeX;
    property StrokeY[Index: Integer]: Double read Get_StrokeY write Set_StrokeY;
    property Stroke[Index: Integer]: Double read Get_Stroke write Set_Stroke;
    property Angle: Double read Get_Angle write Set_Angle;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property TextUp: IText read Get_TextUp;
    property TextDown: IText read Get_TextDown;
  end;

// *********************************************************************//
// DispIntf:  ICutUnitMarkingDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2EDA58EE-DBDA-44CC-AD10-6895006D498C}
// *********************************************************************//
  ICutUnitMarkingDisp = dispinterface
    ['{2EDA58EE-DBDA-44CC-AD10-6895006D498C}']
    property StrokeCount: Integer readonly dispid 1;
    property StrokeX[Index: Integer]: Double dispid 2;
    property StrokeY[Index: Integer]: Double dispid 3;
    property Stroke[Index: Integer]: Double dispid 4;
    property Angle: Double dispid 5;
    property ShelfDirection: ksShelfDirectionEnum dispid 6;
    property ShelfX: Double dispid 7;
    property ShelfY: Double dispid 8;
    property TextUp: IText readonly dispid 9;
    property TextDown: IText readonly dispid 10;
    function  AddStroke(X: Double; Y: Double; Length: Double): WordBool; dispid 11;
    function  DeleteStroke(Index: Integer): WordBool; dispid 12;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICutUnitMarkings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {23B00F94-98D3-4AD7-8827-F4088F4A9E5C}
// *********************************************************************//
  ICutUnitMarkings = interface(IDrawingObjects)
    ['{23B00F94-98D3-4AD7-8827-F4088F4A9E5C}']
    function  Get_CutUnitMarking(Index: OleVariant): ICutUnitMarking; safecall;
    function  Add: ICutUnitMarking; safecall;
    property CutUnitMarking[Index: OleVariant]: ICutUnitMarking read Get_CutUnitMarking;
  end;

// *********************************************************************//
// DispIntf:  ICutUnitMarkingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {23B00F94-98D3-4AD7-8827-F4088F4A9E5C}
// *********************************************************************//
  ICutUnitMarkingsDisp = dispinterface
    ['{23B00F94-98D3-4AD7-8827-F4088F4A9E5C}']
    property CutUnitMarking[Index: OleVariant]: ICutUnitMarking readonly dispid 1;
    function  Add: ICutUnitMarking; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IUnitMarking
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {86F46084-16A8-4B5C-99E9-F848216788F0}
// *********************************************************************//
  IUnitMarking = interface(IDrawingObject)
    ['{86F46084-16A8-4B5C-99E9-F848216788F0}']
    function  Get_Xc: Double; safecall;
    procedure Set_Xc(Result: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Yc(Result: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Radius(Result: Double); safecall;
    function  Get_Height: Double; safecall;
    procedure Set_Height(Result: Double); safecall;
    function  Get_Width: Double; safecall;
    procedure Set_Width(Result: Double); safecall;
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(Result: ksShelfDirectionEnum); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(Result: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(Result: Double); safecall;
    function  Get_Form: ksContourFormEnum; safecall;
    procedure Set_Form(Result: ksContourFormEnum); safecall;
    function  Get_TextUp: IText; safecall;
    function  Get_TextDown: IText; safecall;
    function  Get_FilletRadius: Double; safecall;
    procedure Set_FilletRadius(Result: Double); safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Radius: Double read Get_Radius write Set_Radius;
    property Height: Double read Get_Height write Set_Height;
    property Width: Double read Get_Width write Set_Width;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property Form: ksContourFormEnum read Get_Form write Set_Form;
    property TextUp: IText read Get_TextUp;
    property TextDown: IText read Get_TextDown;
    property FilletRadius: Double read Get_FilletRadius write Set_FilletRadius;
  end;

// *********************************************************************//
// DispIntf:  IUnitMarkingDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {86F46084-16A8-4B5C-99E9-F848216788F0}
// *********************************************************************//
  IUnitMarkingDisp = dispinterface
    ['{86F46084-16A8-4B5C-99E9-F848216788F0}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property Radius: Double dispid 3;
    property Height: Double dispid 4;
    property Width: Double dispid 5;
    property ShelfDirection: ksShelfDirectionEnum dispid 6;
    property ShelfX: Double dispid 7;
    property ShelfY: Double dispid 8;
    property Form: ksContourFormEnum dispid 9;
    property TextUp: IText readonly dispid 10;
    property TextDown: IText readonly dispid 11;
    property FilletRadius: Double dispid 12;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IUnitMarkings
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {969AD901-FC09-47F5-94F5-1ABEB1A9C85C}
// *********************************************************************//
  IUnitMarkings = interface(IDrawingObjects)
    ['{969AD901-FC09-47F5-94F5-1ABEB1A9C85C}']
    function  Get_UnitMarking(Index: OleVariant): IUnitMarking; safecall;
    function  Add: IUnitMarking; safecall;
    property UnitMarking[Index: OleVariant]: IUnitMarking read Get_UnitMarking;
  end;

// *********************************************************************//
// DispIntf:  IUnitMarkingsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {969AD901-FC09-47F5-94F5-1ABEB1A9C85C}
// *********************************************************************//
  IUnitMarkingsDisp = dispinterface
    ['{969AD901-FC09-47F5-94F5-1ABEB1A9C85C}']
    property UnitMarking[Index: OleVariant]: IUnitMarking readonly dispid 1;
    function  Add: IUnitMarking; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBuildingContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FD1FD236-F5BA-4FB0-A872-21FC13E6895F}
// *********************************************************************//
  IBuildingContainer = interface(IDispatch)
    ['{FD1FD236-F5BA-4FB0-A872-21FC13E6895F}']
    function  Get_BuildingAxes: IBuildingAxes; safecall;
    function  Get_Marks: IMarks; safecall;
    function  Get_CutUnitMarkings: ICutUnitMarkings; safecall;
    function  Get_UnitMarkings: IUnitMarkings; safecall;
    function  Get_MultiTextLeaders: IMultiTextLeaders; safecall;
    function  Get_UnitNumbers: IUnitNumbers; safecall;
    function  Get_Braces: IBraces; safecall;
    function  Get_BuildingCutLines: ICutLines; safecall;
    property BuildingAxes: IBuildingAxes read Get_BuildingAxes;
    property Marks: IMarks read Get_Marks;
    property CutUnitMarkings: ICutUnitMarkings read Get_CutUnitMarkings;
    property UnitMarkings: IUnitMarkings read Get_UnitMarkings;
    property MultiTextLeaders: IMultiTextLeaders read Get_MultiTextLeaders;
    property UnitNumbers: IUnitNumbers read Get_UnitNumbers;
    property Braces: IBraces read Get_Braces;
    property BuildingCutLines: ICutLines read Get_BuildingCutLines;
  end;

// *********************************************************************//
// DispIntf:  IBuildingContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FD1FD236-F5BA-4FB0-A872-21FC13E6895F}
// *********************************************************************//
  IBuildingContainerDisp = dispinterface
    ['{FD1FD236-F5BA-4FB0-A872-21FC13E6895F}']
    property BuildingAxes: IBuildingAxes readonly dispid 5501;
    property Marks: IMarks readonly dispid 5502;
    property CutUnitMarkings: ICutUnitMarkings readonly dispid 5503;
    property UnitMarkings: IUnitMarkings readonly dispid 5504;
    property MultiTextLeaders: IMultiTextLeaders readonly dispid 5505;
    property UnitNumbers: IUnitNumbers readonly dispid 5506;
    property Braces: IBraces readonly dispid 5507;
    property BuildingCutLines: ICutLines readonly dispid 5508;
  end;

// *********************************************************************//
// Interface: IMultiTextLeaders
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {233B2298-7A45-4CE1-AEF2-30B063FDB63C}
// *********************************************************************//
  IMultiTextLeaders = interface(IDrawingObjects)
    ['{233B2298-7A45-4CE1-AEF2-30B063FDB63C}']
    function  Get_MultiTextLeader(Index: OleVariant): IMultiTextLeader; safecall;
    function  Add: IMultiTextLeader; safecall;
    property MultiTextLeader[Index: OleVariant]: IMultiTextLeader read Get_MultiTextLeader;
  end;

// *********************************************************************//
// DispIntf:  IMultiTextLeadersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {233B2298-7A45-4CE1-AEF2-30B063FDB63C}
// *********************************************************************//
  IMultiTextLeadersDisp = dispinterface
    ['{233B2298-7A45-4CE1-AEF2-30B063FDB63C}']
    property MultiTextLeader[Index: OleVariant]: IMultiTextLeader readonly dispid 1;
    function  Add: IMultiTextLeader; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMultiTextLeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1BFC5D3F-1483-4569-B4B5-7A12163A4655}
// *********************************************************************//
  IMultiTextLeader = interface(IDrawingObject)
    ['{1BFC5D3F-1483-4569-B4B5-7A12163A4655}']
    function  Get_ArrowType: ksArrowEnum; safecall;
    procedure Set_ArrowType(Result: ksArrowEnum); safecall;
    function  Get_BranchCount: Integer; safecall;
    procedure Set_BranchPoints(Index: Integer; PVal: OleVariant); safecall;
    function  Get_BranchPoints(Index: Integer): OleVariant; safecall;
    function  Get_BranchPointsCount(Index: Integer): Integer; safecall;
    procedure Set_BranchX(Index: Integer; PVal: Double); safecall;
    function  Get_BranchX(Index: Integer): Double; safecall;
    procedure Set_BranchY(Index: Integer; PVal: Double); safecall;
    function  Get_BranchY(Index: Integer): Double; safecall;
    function  AddBranch(Index: Integer; Points: OleVariant): WordBool; safecall;
    function  AddBranchByPoint(Index: Integer; X: Double; Y: Double): WordBool; safecall;
    function  DeleteBranch(Index: Integer): WordBool; safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(Result: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(Result: Double); safecall;
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(Result: ksShelfDirectionEnum); safecall;
    function  Get_TextDirection: WordBool; safecall;
    procedure Set_TextDirection(Result: WordBool); safecall;
    function  Get_Form: WordBool; safecall;
    procedure Set_Form(Result: WordBool); safecall;
    function  Get_Align: WordBool; safecall;
    procedure Set_Align(Result: WordBool); safecall;
    function  Get_Text: IText; safecall;
    property ArrowType: ksArrowEnum read Get_ArrowType write Set_ArrowType;
    property BranchCount: Integer read Get_BranchCount;
    property BranchPoints[Index: Integer]: OleVariant read Get_BranchPoints write Set_BranchPoints;
    property BranchPointsCount[Index: Integer]: Integer read Get_BranchPointsCount;
    property BranchX[Index: Integer]: Double read Get_BranchX write Set_BranchX;
    property BranchY[Index: Integer]: Double read Get_BranchY write Set_BranchY;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property TextDirection: WordBool read Get_TextDirection write Set_TextDirection;
    property Form: WordBool read Get_Form write Set_Form;
    property Align: WordBool read Get_Align write Set_Align;
    property Text: IText read Get_Text;
  end;

// *********************************************************************//
// DispIntf:  IMultiTextLeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1BFC5D3F-1483-4569-B4B5-7A12163A4655}
// *********************************************************************//
  IMultiTextLeaderDisp = dispinterface
    ['{1BFC5D3F-1483-4569-B4B5-7A12163A4655}']
    property ArrowType: ksArrowEnum dispid 1;
    property BranchCount: Integer readonly dispid 2;
    property BranchPoints[Index: Integer]: OleVariant dispid 3;
    property BranchPointsCount[Index: Integer]: Integer readonly dispid 4;
    property BranchX[Index: Integer]: Double dispid 5;
    property BranchY[Index: Integer]: Double dispid 6;
    function  AddBranch(Index: Integer; Points: OleVariant): WordBool; dispid 7;
    function  AddBranchByPoint(Index: Integer; X: Double; Y: Double): WordBool; dispid 8;
    function  DeleteBranch(Index: Integer): WordBool; dispid 9;
    property ShelfX: Double dispid 10;
    property ShelfY: Double dispid 11;
    property ShelfDirection: ksShelfDirectionEnum dispid 12;
    property TextDirection: WordBool dispid 13;
    property Form: WordBool dispid 14;
    property Align: WordBool dispid 15;
    property Text: IText readonly dispid 16;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IUnitNumbers
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {598E649B-970C-454B-9162-1BB6C9FBFCBF}
// *********************************************************************//
  IUnitNumbers = interface(IDrawingObjects)
    ['{598E649B-970C-454B-9162-1BB6C9FBFCBF}']
    function  Get_UnitNumber(Index: OleVariant): IUnitNumber; safecall;
    function  Add: IUnitNumber; safecall;
    property UnitNumber[Index: OleVariant]: IUnitNumber read Get_UnitNumber;
  end;

// *********************************************************************//
// DispIntf:  IUnitNumbersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {598E649B-970C-454B-9162-1BB6C9FBFCBF}
// *********************************************************************//
  IUnitNumbersDisp = dispinterface
    ['{598E649B-970C-454B-9162-1BB6C9FBFCBF}']
    property UnitNumber[Index: OleVariant]: IUnitNumber readonly dispid 1;
    function  Add: IUnitNumber; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IUnitNumber
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FABAF607-CB92-47C4-9409-B7678162051D}
// *********************************************************************//
  IUnitNumber = interface(IDrawingObject)
    ['{FABAF607-CB92-47C4-9409-B7678162051D}']
    function  Get_X: Double; safecall;
    procedure Set_X(Result: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Y(Result: Double); safecall;
    function  Get_TextUp: IText; safecall;
    function  Get_TextDown: IText; safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property TextUp: IText read Get_TextUp;
    property TextDown: IText read Get_TextDown;
  end;

// *********************************************************************//
// DispIntf:  IUnitNumberDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FABAF607-CB92-47C4-9409-B7678162051D}
// *********************************************************************//
  IUnitNumberDisp = dispinterface
    ['{FABAF607-CB92-47C4-9409-B7678162051D}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property TextUp: IText readonly dispid 3;
    property TextDown: IText readonly dispid 4;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBraces
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {99F27BD6-6294-45D9-AF78-A9D52E9DD799}
// *********************************************************************//
  IBraces = interface(IDrawingObjects)
    ['{99F27BD6-6294-45D9-AF78-A9D52E9DD799}']
    function  Get_Brace(Index: OleVariant): IBrace; safecall;
    function  Add: IBrace; safecall;
    property Brace[Index: OleVariant]: IBrace read Get_Brace;
  end;

// *********************************************************************//
// DispIntf:  IBracesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {99F27BD6-6294-45D9-AF78-A9D52E9DD799}
// *********************************************************************//
  IBracesDisp = dispinterface
    ['{99F27BD6-6294-45D9-AF78-A9D52E9DD799}']
    property Brace[Index: OleVariant]: IBrace readonly dispid 1;
    function  Add: IBrace; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBrace
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7F328D28-76E9-4E04-A35C-AD60339998E4}
// *********************************************************************//
  IBrace = interface(IDrawingObject)
    ['{7F328D28-76E9-4E04-A35C-AD60339998E4}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Radius(Result: Double); safecall;
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(Result: ksShelfDirectionEnum); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(Result: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(Result: Double); safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_Direction(Result: WordBool); safecall;
    function  Get_Alignment: ksAlignmentTypeEnum; safecall;
    procedure Set_Alignment(Result: ksAlignmentTypeEnum); safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    function  Get_Text: IText; safecall;
    procedure Set_ShelfPoints(PVal: OleVariant); safecall;
    function  Get_ShelfPoints: OleVariant; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Length: Double read Get_Length write Set_Length;
    property Angle: Double read Get_Angle write Set_Angle;
    property Radius: Double read Get_Radius write Set_Radius;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property Alignment: ksAlignmentTypeEnum read Get_Alignment write Set_Alignment;
    property Style: Integer read Get_Style write Set_Style;
    property Text: IText read Get_Text;
    property ShelfPoints: OleVariant read Get_ShelfPoints write Set_ShelfPoints;
  end;

// *********************************************************************//
// DispIntf:  IBraceDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7F328D28-76E9-4E04-A35C-AD60339998E4}
// *********************************************************************//
  IBraceDisp = dispinterface
    ['{7F328D28-76E9-4E04-A35C-AD60339998E4}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Length: Double dispid 5;
    property Angle: Double dispid 6;
    property Radius: Double dispid 7;
    property ShelfDirection: ksShelfDirectionEnum dispid 8;
    property ShelfX: Double dispid 9;
    property ShelfY: Double dispid 10;
    property Direction: WordBool dispid 11;
    property Alignment: ksAlignmentTypeEnum dispid 12;
    property Style: Integer dispid 13;
    property Text: IText readonly dispid 14;
    property ShelfPoints: OleVariant dispid 15;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICutLines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {666DA5B4-324C-493C-9A91-37D9E078EB4E}
// *********************************************************************//
  ICutLines = interface(IDrawingObjects)
    ['{666DA5B4-324C-493C-9A91-37D9E078EB4E}']
    function  Get_CutLine(Index: OleVariant): ICutLine; safecall;
    function  Add: ICutLine; safecall;
    property CutLine[Index: OleVariant]: ICutLine read Get_CutLine;
  end;

// *********************************************************************//
// DispIntf:  ICutLinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {666DA5B4-324C-493C-9A91-37D9E078EB4E}
// *********************************************************************//
  ICutLinesDisp = dispinterface
    ['{666DA5B4-324C-493C-9A91-37D9E078EB4E}']
    property CutLine[Index: OleVariant]: ICutLine readonly dispid 1;
    function  Add: ICutLine; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICutLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {26E86124-DC1C-41A2-8075-E73F3EAD8474}
// *********************************************************************//
  ICutLine = interface(IDrawingObject)
    ['{26E86124-DC1C-41A2-8075-E73F3EAD8474}']
    function  Get_ArrowPos: WordBool; safecall;
    procedure Set_ArrowPos(Result: WordBool); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_X1(Result: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_Y1(Result: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_X2(Result: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Y2(Result: Double); safecall;
    procedure Set_Points(PVal: OleVariant); safecall;
    function  Get_Points: OleVariant; safecall;
    function  Get_AutoSorted: WordBool; safecall;
    procedure Set_AutoSorted(Result: WordBool); safecall;
    function  Get_Text: IText; safecall;
    function  Get_AdditionalText: IText; safecall;
    function  Get_AutoSheet: WordBool; safecall;
    procedure Set_AutoSheet(Result: WordBool); safecall;
    function  Get_AutoZone: WordBool; safecall;
    procedure Set_AutoZone(Result: WordBool); safecall;
    function  Get_AdditionalTextPos: WordBool; safecall;
    procedure Set_AdditionalTextPos(Result: WordBool); safecall;
    property ArrowPos: WordBool read Get_ArrowPos write Set_ArrowPos;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Points: OleVariant read Get_Points write Set_Points;
    property AutoSorted: WordBool read Get_AutoSorted write Set_AutoSorted;
    property Text: IText read Get_Text;
    property AdditionalText: IText read Get_AdditionalText;
    property AutoSheet: WordBool read Get_AutoSheet write Set_AutoSheet;
    property AutoZone: WordBool read Get_AutoZone write Set_AutoZone;
    property AdditionalTextPos: WordBool read Get_AdditionalTextPos write Set_AdditionalTextPos;
  end;

// *********************************************************************//
// DispIntf:  ICutLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {26E86124-DC1C-41A2-8075-E73F3EAD8474}
// *********************************************************************//
  ICutLineDisp = dispinterface
    ['{26E86124-DC1C-41A2-8075-E73F3EAD8474}']
    property ArrowPos: WordBool dispid 1;
    property X1: Double dispid 2;
    property Y1: Double dispid 3;
    property X2: Double dispid 4;
    property Y2: Double dispid 5;
    property Points: OleVariant dispid 6;
    property AutoSorted: WordBool dispid 7;
    property Text: IText readonly dispid 8;
    property AdditionalText: IText readonly dispid 9;
    property AutoSheet: WordBool dispid 10;
    property AutoZone: WordBool dispid 11;
    property AdditionalTextPos: WordBool dispid 12;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ISymbols2DContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F46B0086-17F2-4489-A5A7-0AA677610AFD}
// *********************************************************************//
  ISymbols2DContainer = interface(IDispatch)
    ['{F46B0086-17F2-4489-A5A7-0AA677610AFD}']
    function  Get_LineDimensions: ILineDimensions; safecall;
    function  Get_RadialDimensions: IRadialDimensions; safecall;
    function  Get_DiametralDimensions: IDiametralDimensions; safecall;
    function  Get_AngleDimensions: IAngleDimensions; safecall;
    function  Get_BreakLineDimensions: IBreakLineDimensions; safecall;
    function  Get_HeightDimensions: IHeightDimensions; safecall;
    function  Get_ArcDimensions: IArcDimensions; safecall;
    function  Get_BreakRadialDimensions: IBreakRadialDimensions; safecall;
    function  Get_Roughs: IRoughs; safecall;
    function  Get_Leaders: ILeaders; safecall;
    function  Get_Bases: IBases; safecall;
    function  Get_Tolerances: ITolerances; safecall;
    function  Get_DrawingTables: IDrawingTables; safecall;
    function  Get_CutLines: ICutLines; safecall;
    function  Get_ViewPointers: IViewPointers; safecall;
    function  Get_CentreMarkers: ICentreMarkers; safecall;
    function  Get_RemoteElements: IRemoteElements; safecall;
    function  Get_AxisLines: IAxisLines; safecall;
    function  Get_WaveLines: IWaveLines; safecall;
    function  Get_BrokenLines: IBrokenLines; safecall;
    property LineDimensions: ILineDimensions read Get_LineDimensions;
    property RadialDimensions: IRadialDimensions read Get_RadialDimensions;
    property DiametralDimensions: IDiametralDimensions read Get_DiametralDimensions;
    property AngleDimensions: IAngleDimensions read Get_AngleDimensions;
    property BreakLineDimensions: IBreakLineDimensions read Get_BreakLineDimensions;
    property HeightDimensions: IHeightDimensions read Get_HeightDimensions;
    property ArcDimensions: IArcDimensions read Get_ArcDimensions;
    property BreakRadialDimensions: IBreakRadialDimensions read Get_BreakRadialDimensions;
    property Roughs: IRoughs read Get_Roughs;
    property Leaders: ILeaders read Get_Leaders;
    property Bases: IBases read Get_Bases;
    property Tolerances: ITolerances read Get_Tolerances;
    property DrawingTables: IDrawingTables read Get_DrawingTables;
    property CutLines: ICutLines read Get_CutLines;
    property ViewPointers: IViewPointers read Get_ViewPointers;
    property CentreMarkers: ICentreMarkers read Get_CentreMarkers;
    property RemoteElements: IRemoteElements read Get_RemoteElements;
    property AxisLines: IAxisLines read Get_AxisLines;
    property WaveLines: IWaveLines read Get_WaveLines;
    property BrokenLines: IBrokenLines read Get_BrokenLines;
  end;

// *********************************************************************//
// DispIntf:  ISymbols2DContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F46B0086-17F2-4489-A5A7-0AA677610AFD}
// *********************************************************************//
  ISymbols2DContainerDisp = dispinterface
    ['{F46B0086-17F2-4489-A5A7-0AA677610AFD}']
    property LineDimensions: ILineDimensions readonly dispid 10001;
    property RadialDimensions: IRadialDimensions readonly dispid 10002;
    property DiametralDimensions: IDiametralDimensions readonly dispid 10003;
    property AngleDimensions: IAngleDimensions readonly dispid 10004;
    property BreakLineDimensions: IBreakLineDimensions readonly dispid 10005;
    property HeightDimensions: IHeightDimensions readonly dispid 10006;
    property ArcDimensions: IArcDimensions readonly dispid 10007;
    property BreakRadialDimensions: IBreakRadialDimensions readonly dispid 10008;
    property Roughs: IRoughs readonly dispid 10009;
    property Leaders: ILeaders readonly dispid 10010;
    property Bases: IBases readonly dispid 10011;
    property Tolerances: ITolerances readonly dispid 10012;
    property DrawingTables: IDrawingTables readonly dispid 10013;
    property CutLines: ICutLines readonly dispid 10014;
    property ViewPointers: IViewPointers readonly dispid 10015;
    property CentreMarkers: ICentreMarkers readonly dispid 10016;
    property RemoteElements: IRemoteElements readonly dispid 10017;
    property AxisLines: IAxisLines readonly dispid 10018;
    property WaveLines: IWaveLines readonly dispid 10019;
    property BrokenLines: IBrokenLines readonly dispid 10020;
  end;

// *********************************************************************//
// Interface: ILineDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A6F6A18A-78FA-4A77-BB75-90647E0C545C}
// *********************************************************************//
  ILineDimensions = interface(IDrawingObjects)
    ['{A6F6A18A-78FA-4A77-BB75-90647E0C545C}']
    function  Get_LineDimension(Index: OleVariant): ILineDimension; safecall;
    function  Add: ILineDimension; safecall;
    property LineDimension[Index: OleVariant]: ILineDimension read Get_LineDimension;
  end;

// *********************************************************************//
// DispIntf:  ILineDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A6F6A18A-78FA-4A77-BB75-90647E0C545C}
// *********************************************************************//
  ILineDimensionsDisp = dispinterface
    ['{A6F6A18A-78FA-4A77-BB75-90647E0C545C}']
    property LineDimension[Index: OleVariant]: ILineDimension readonly dispid 1;
    function  Add: ILineDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILineDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A3767BDA-E605-4FC1-988D-81809DEB36F4}
// *********************************************************************//
  ILineDimension = interface(IDrawingObject)
    ['{A3767BDA-E605-4FC1-988D-81809DEB36F4}']
    function  Get_X1: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_X3: Double; safecall;
    procedure Set_X3(PVal: Double); safecall;
    function  Get_Y3: Double; safecall;
    procedure Set_Y3(PVal: Double); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(PVal: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(PVal: Double); safecall;
    function  Get_Orientation: ksLineDimensionOrientationEnum; safecall;
    procedure Set_Orientation(PVal: ksLineDimensionOrientationEnum); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property X3: Double read Get_X3 write Set_X3;
    property Y3: Double read Get_Y3 write Set_Y3;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property Orientation: ksLineDimensionOrientationEnum read Get_Orientation write Set_Orientation;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  ILineDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A3767BDA-E605-4FC1-988D-81809DEB36F4}
// *********************************************************************//
  ILineDimensionDisp = dispinterface
    ['{A3767BDA-E605-4FC1-988D-81809DEB36F4}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property X3: Double dispid 5;
    property Y3: Double dispid 6;
    property ShelfX: Double dispid 7;
    property ShelfY: Double dispid 8;
    property Orientation: ksLineDimensionOrientationEnum dispid 9;
    property Angle: Double dispid 10;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRadialDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {12D26993-449E-42E2-A909-B047AFD6E27D}
// *********************************************************************//
  IRadialDimensions = interface(IDrawingObjects)
    ['{12D26993-449E-42E2-A909-B047AFD6E27D}']
    function  Get_RadialDimension(Index: OleVariant): IRadialDimension; safecall;
    function  Add: IRadialDimension; safecall;
    property RadialDimension[Index: OleVariant]: IRadialDimension read Get_RadialDimension;
  end;

// *********************************************************************//
// DispIntf:  IRadialDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {12D26993-449E-42E2-A909-B047AFD6E27D}
// *********************************************************************//
  IRadialDimensionsDisp = dispinterface
    ['{12D26993-449E-42E2-A909-B047AFD6E27D}']
    property RadialDimension[Index: OleVariant]: IRadialDimension readonly dispid 1;
    function  Add: IRadialDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRadialDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {712A9437-D772-4EAE-AF83-ABC9C22EB281}
// *********************************************************************//
  IRadialDimension = interface(IDrawingObject)
    ['{712A9437-D772-4EAE-AF83-ABC9C22EB281}']
    function  Get_Xc: Double; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_DimensionType: WordBool; safecall;
    procedure Set_DimensionType(PVal: WordBool); safecall;
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Object1: IDrawingObject); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Radius: Double read Get_Radius write Set_Radius;
    property DimensionType: WordBool read Get_DimensionType write Set_DimensionType;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  IRadialDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {712A9437-D772-4EAE-AF83-ABC9C22EB281}
// *********************************************************************//
  IRadialDimensionDisp = dispinterface
    ['{712A9437-D772-4EAE-AF83-ABC9C22EB281}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property Radius: Double dispid 3;
    property DimensionType: WordBool dispid 4;
    property BaseObject: IDrawingObject dispid 5;
    property Angle: Double dispid 6;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDiametralDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8E45FEB9-7BCD-4C9F-9767-320736980662}
// *********************************************************************//
  IDiametralDimensions = interface(IDrawingObjects)
    ['{8E45FEB9-7BCD-4C9F-9767-320736980662}']
    function  Get_DiametralDimension(Index: OleVariant): IDiametralDimension; safecall;
    function  Add: IDiametralDimension; safecall;
    property DiametralDimension[Index: OleVariant]: IDiametralDimension read Get_DiametralDimension;
  end;

// *********************************************************************//
// DispIntf:  IDiametralDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8E45FEB9-7BCD-4C9F-9767-320736980662}
// *********************************************************************//
  IDiametralDimensionsDisp = dispinterface
    ['{8E45FEB9-7BCD-4C9F-9767-320736980662}']
    property DiametralDimension[Index: OleVariant]: IDiametralDimension readonly dispid 1;
    function  Add: IDiametralDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDiametralDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2B4CE92F-438D-4D3E-8F8D-4D14E5D0E214}
// *********************************************************************//
  IDiametralDimension = interface(IDrawingObject)
    ['{2B4CE92F-438D-4D3E-8F8D-4D14E5D0E214}']
    function  Get_Xc: Double; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_DimensionType: WordBool; safecall;
    procedure Set_DimensionType(PVal: WordBool); safecall;
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Object1: IDrawingObject); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Radius: Double read Get_Radius write Set_Radius;
    property DimensionType: WordBool read Get_DimensionType write Set_DimensionType;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  IDiametralDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2B4CE92F-438D-4D3E-8F8D-4D14E5D0E214}
// *********************************************************************//
  IDiametralDimensionDisp = dispinterface
    ['{2B4CE92F-438D-4D3E-8F8D-4D14E5D0E214}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property Radius: Double dispid 3;
    property DimensionType: WordBool dispid 4;
    property BaseObject: IDrawingObject dispid 5;
    property Angle: Double dispid 6;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAngleDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DF9ABB77-BBB6-4B29-A0E0-81DCFD525C2E}
// *********************************************************************//
  IAngleDimensions = interface(IDrawingObjects)
    ['{DF9ABB77-BBB6-4B29-A0E0-81DCFD525C2E}']
    function  Get_AngleDimension(Index: OleVariant): IAngleDimension; safecall;
    function  Add(DimType: DrawingObjectTypeEnum): IAngleDimension; safecall;
    property AngleDimension[Index: OleVariant]: IAngleDimension read Get_AngleDimension;
  end;

// *********************************************************************//
// DispIntf:  IAngleDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DF9ABB77-BBB6-4B29-A0E0-81DCFD525C2E}
// *********************************************************************//
  IAngleDimensionsDisp = dispinterface
    ['{DF9ABB77-BBB6-4B29-A0E0-81DCFD525C2E}']
    property AngleDimension[Index: OleVariant]: IAngleDimension readonly dispid 1;
    function  Add(DimType: DrawingObjectTypeEnum): IAngleDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAngleDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0F2CE9EC-5D2A-4B21-B96A-46201C120ED1}
// *********************************************************************//
  IAngleDimension = interface(IDrawingObject)
    ['{0F2CE9EC-5D2A-4B21-B96A-46201C120ED1}']
    function  Get_Xc: Double; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Angle1(PVal: Double); safecall;
    function  Get_Angle1: Double; safecall;
    procedure Set_Angle2(PVal: Double); safecall;
    function  Get_Angle2: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    function  Get_BaseObject1: IDrawingObject; safecall;
    procedure Set_BaseObject1(const Object1: IDrawingObject); safecall;
    function  Get_BaseObject2: IDrawingObject; safecall;
    procedure Set_BaseObject2(const Object1: IDrawingObject); safecall;
    function  Get_DimensionType: ksAngleDimTypeEnum; safecall;
    procedure Set_DimensionType(PVal: ksAngleDimTypeEnum); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(PVal: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(PVal: Double); safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_X3(PVal: Double); safecall;
    function  Get_X3: Double; safecall;
    procedure Set_Y3(PVal: Double); safecall;
    function  Get_Y3: Double; safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Radius: Double read Get_Radius write Set_Radius;
    property Angle1: Double read Get_Angle1 write Set_Angle1;
    property Angle2: Double read Get_Angle2 write Set_Angle2;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property BaseObject1: IDrawingObject read Get_BaseObject1 write Set_BaseObject1;
    property BaseObject2: IDrawingObject read Get_BaseObject2 write Set_BaseObject2;
    property DimensionType: ksAngleDimTypeEnum read Get_DimensionType write Set_DimensionType;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property X3: Double read Get_X3 write Set_X3;
    property Y3: Double read Get_Y3 write Set_Y3;
  end;

// *********************************************************************//
// DispIntf:  IAngleDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0F2CE9EC-5D2A-4B21-B96A-46201C120ED1}
// *********************************************************************//
  IAngleDimensionDisp = dispinterface
    ['{0F2CE9EC-5D2A-4B21-B96A-46201C120ED1}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property Radius: Double dispid 3;
    property Angle1: Double dispid 4;
    property Angle2: Double dispid 5;
    property X1: Double dispid 6;
    property Y1: Double dispid 7;
    property X2: Double dispid 8;
    property Y2: Double dispid 9;
    property BaseObject1: IDrawingObject dispid 10;
    property BaseObject2: IDrawingObject dispid 11;
    property DimensionType: ksAngleDimTypeEnum dispid 12;
    property ShelfX: Double dispid 13;
    property ShelfY: Double dispid 14;
    property Direction: WordBool dispid 15;
    property X3: Double dispid 16;
    property Y3: Double dispid 17;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBreakLineDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4125169F-3EA8-4AC0-9E1B-5582D62600C4}
// *********************************************************************//
  IBreakLineDimensions = interface(IDrawingObjects)
    ['{4125169F-3EA8-4AC0-9E1B-5582D62600C4}']
    function  Get_BreakLineDimension(Index: OleVariant): IBreakLineDimension; safecall;
    function  Add: IBreakLineDimension; safecall;
    property BreakLineDimension[Index: OleVariant]: IBreakLineDimension read Get_BreakLineDimension;
  end;

// *********************************************************************//
// DispIntf:  IBreakLineDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {4125169F-3EA8-4AC0-9E1B-5582D62600C4}
// *********************************************************************//
  IBreakLineDimensionsDisp = dispinterface
    ['{4125169F-3EA8-4AC0-9E1B-5582D62600C4}']
    property BreakLineDimension[Index: OleVariant]: IBreakLineDimension readonly dispid 1;
    function  Add: IBreakLineDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBreakLineDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {61164A26-855C-4220-88ED-C2BDAF49B2DB}
// *********************************************************************//
  IBreakLineDimension = interface(IDrawingObject)
    ['{61164A26-855C-4220-88ED-C2BDAF49B2DB}']
    function  Get_X1: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_X3: Double; safecall;
    procedure Set_X3(PVal: Double); safecall;
    function  Get_Y3: Double; safecall;
    procedure Set_Y3(PVal: Double); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(PVal: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(PVal: Double); safecall;
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Object1: IDrawingObject); safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property X3: Double read Get_X3 write Set_X3;
    property Y3: Double read Get_Y3 write Set_Y3;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
  end;

// *********************************************************************//
// DispIntf:  IBreakLineDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {61164A26-855C-4220-88ED-C2BDAF49B2DB}
// *********************************************************************//
  IBreakLineDimensionDisp = dispinterface
    ['{61164A26-855C-4220-88ED-C2BDAF49B2DB}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property X3: Double dispid 5;
    property Y3: Double dispid 6;
    property ShelfX: Double dispid 7;
    property ShelfY: Double dispid 8;
    property BaseObject: IDrawingObject dispid 9;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IHeightDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3A56D35C-3242-4C49-BA99-CF790EB10356}
// *********************************************************************//
  IHeightDimensions = interface(IDrawingObjects)
    ['{3A56D35C-3242-4C49-BA99-CF790EB10356}']
    function  Get_HeightDimension(Index: OleVariant): IHeightDimension; safecall;
    function  Add: IHeightDimension; safecall;
    property HeightDimension[Index: OleVariant]: IHeightDimension read Get_HeightDimension;
  end;

// *********************************************************************//
// DispIntf:  IHeightDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3A56D35C-3242-4C49-BA99-CF790EB10356}
// *********************************************************************//
  IHeightDimensionsDisp = dispinterface
    ['{3A56D35C-3242-4C49-BA99-CF790EB10356}']
    property HeightDimension[Index: OleVariant]: IHeightDimension readonly dispid 1;
    function  Add: IHeightDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IHeightDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {938BE57F-55FF-469F-82A5-B1CD6CCF8340}
// *********************************************************************//
  IHeightDimension = interface(IDrawingObject)
    ['{938BE57F-55FF-469F-82A5-B1CD6CCF8340}']
    function  Get_DimensionType: ksHeightDimTypeEnum; safecall;
    procedure Set_DimensionType(PVal: ksHeightDimTypeEnum); safecall;
    function  Get_X: Double; safecall;
    procedure Set_X(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    property DimensionType: ksHeightDimTypeEnum read Get_DimensionType write Set_DimensionType;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
  end;

// *********************************************************************//
// DispIntf:  IHeightDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {938BE57F-55FF-469F-82A5-B1CD6CCF8340}
// *********************************************************************//
  IHeightDimensionDisp = dispinterface
    ['{938BE57F-55FF-469F-82A5-B1CD6CCF8340}']
    property DimensionType: ksHeightDimTypeEnum dispid 1;
    property X: Double dispid 2;
    property Y: Double dispid 3;
    property X1: Double dispid 4;
    property Y1: Double dispid 5;
    property X2: Double dispid 6;
    property Y2: Double dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IArcDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FE2755D9-48E2-44CC-BC24-86CF86BE08E2}
// *********************************************************************//
  IArcDimensions = interface(IDrawingObjects)
    ['{FE2755D9-48E2-44CC-BC24-86CF86BE08E2}']
    function  Get_ArcDimension(Index: OleVariant): IArcDimension; safecall;
    function  Add: IArcDimension; safecall;
    property ArcDimension[Index: OleVariant]: IArcDimension read Get_ArcDimension;
  end;

// *********************************************************************//
// DispIntf:  IArcDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FE2755D9-48E2-44CC-BC24-86CF86BE08E2}
// *********************************************************************//
  IArcDimensionsDisp = dispinterface
    ['{FE2755D9-48E2-44CC-BC24-86CF86BE08E2}']
    property ArcDimension[Index: OleVariant]: IArcDimension readonly dispid 1;
    function  Add: IArcDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IArcDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {11487495-B18A-4877-9E85-3DC9016DF8BD}
// *********************************************************************//
  IArcDimension = interface(IDrawingObject)
    ['{11487495-B18A-4877-9E85-3DC9016DF8BD}']
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Object1: IDrawingObject); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_X3: Double; safecall;
    procedure Set_X3(PVal: Double); safecall;
    function  Get_Y3: Double; safecall;
    procedure Set_Y3(PVal: Double); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(PVal: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(PVal: Double); safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    function  Get_DimensionType: WordBool; safecall;
    procedure Set_DimensionType(PVal: WordBool); safecall;
    function  Get_TextPointer: WordBool; safecall;
    procedure Set_TextPointer(PVal: WordBool); safecall;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property X3: Double read Get_X3 write Set_X3;
    property Y3: Double read Get_Y3 write Set_Y3;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property DimensionType: WordBool read Get_DimensionType write Set_DimensionType;
    property TextPointer: WordBool read Get_TextPointer write Set_TextPointer;
  end;

// *********************************************************************//
// DispIntf:  IArcDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {11487495-B18A-4877-9E85-3DC9016DF8BD}
// *********************************************************************//
  IArcDimensionDisp = dispinterface
    ['{11487495-B18A-4877-9E85-3DC9016DF8BD}']
    property BaseObject: IDrawingObject dispid 1;
    property Xc: Double dispid 2;
    property Yc: Double dispid 3;
    property X1: Double dispid 4;
    property Y1: Double dispid 5;
    property X2: Double dispid 6;
    property Y2: Double dispid 7;
    property X3: Double dispid 8;
    property Y3: Double dispid 9;
    property ShelfX: Double dispid 10;
    property ShelfY: Double dispid 11;
    property Direction: WordBool dispid 12;
    property DimensionType: WordBool dispid 13;
    property TextPointer: WordBool dispid 14;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBreakRadialDimensions
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E2181A3E-5417-4D73-AB65-983DED3438E0}
// *********************************************************************//
  IBreakRadialDimensions = interface(IDrawingObjects)
    ['{E2181A3E-5417-4D73-AB65-983DED3438E0}']
    function  Get_BreakRadialDimension(Index: OleVariant): IBreakRadialDimension; safecall;
    function  Add: IBreakRadialDimension; safecall;
    property BreakRadialDimension[Index: OleVariant]: IBreakRadialDimension read Get_BreakRadialDimension;
  end;

// *********************************************************************//
// DispIntf:  IBreakRadialDimensionsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {E2181A3E-5417-4D73-AB65-983DED3438E0}
// *********************************************************************//
  IBreakRadialDimensionsDisp = dispinterface
    ['{E2181A3E-5417-4D73-AB65-983DED3438E0}']
    property BreakRadialDimension[Index: OleVariant]: IBreakRadialDimension readonly dispid 1;
    function  Add: IBreakRadialDimension; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBreakRadialDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {88491537-9E93-42F3-861C-761A75BB89D6}
// *********************************************************************//
  IBreakRadialDimension = interface(IDrawingObject)
    ['{88491537-9E93-42F3-861C-761A75BB89D6}']
    function  Get_Xc: Double; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Object1: IDrawingObject); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_BreakLength: Double; safecall;
    procedure Set_BreakLength(PVal: Double); safecall;
    function  Get_TextOnLine: ksDimensionTextPosEnum; safecall;
    procedure Set_TextOnLine(PVal: ksDimensionTextPosEnum); safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Radius: Double read Get_Radius write Set_Radius;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property Angle: Double read Get_Angle write Set_Angle;
    property BreakLength: Double read Get_BreakLength write Set_BreakLength;
    property TextOnLine: ksDimensionTextPosEnum read Get_TextOnLine write Set_TextOnLine;
  end;

// *********************************************************************//
// DispIntf:  IBreakRadialDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {88491537-9E93-42F3-861C-761A75BB89D6}
// *********************************************************************//
  IBreakRadialDimensionDisp = dispinterface
    ['{88491537-9E93-42F3-861C-761A75BB89D6}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property Radius: Double dispid 3;
    property BaseObject: IDrawingObject dispid 4;
    property Angle: Double dispid 5;
    property BreakLength: Double dispid 6;
    property TextOnLine: ksDimensionTextPosEnum dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRoughs
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {ACC42B32-27F3-4F74-B4A5-C97D4C7B289D}
// *********************************************************************//
  IRoughs = interface(IDrawingObjects)
    ['{ACC42B32-27F3-4F74-B4A5-C97D4C7B289D}']
    function  Get_Rough(Index: OleVariant): IRough; safecall;
    function  Add: IRough; safecall;
    property Rough[Index: OleVariant]: IRough read Get_Rough;
  end;

// *********************************************************************//
// DispIntf:  IRoughsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {ACC42B32-27F3-4F74-B4A5-C97D4C7B289D}
// *********************************************************************//
  IRoughsDisp = dispinterface
    ['{ACC42B32-27F3-4F74-B4A5-C97D4C7B289D}']
    property Rough[Index: OleVariant]: IRough readonly dispid 1;
    function  Add: IRough; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRough
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0A192AC5-D8BC-43E9-8FC7-ACF32578DDB4}
// *********************************************************************//
  IRough = interface(IDrawingObject)
    ['{0A192AC5-D8BC-43E9-8FC7-ACF32578DDB4}']
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const NewObject: IDrawingObject); safecall;
    function  Get_X0: Double; safecall;
    procedure Set_X0(Result: Double); safecall;
    function  Get_Y0: Double; safecall;
    procedure Set_Y0(Result: Double); safecall;
    function  Get_ShelfX: Double; safecall;
    procedure Set_ShelfX(Result: Double); safecall;
    function  Get_ShelfY: Double; safecall;
    procedure Set_ShelfY(Result: Double); safecall;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property X0: Double read Get_X0 write Set_X0;
    property Y0: Double read Get_Y0 write Set_Y0;
    property ShelfX: Double read Get_ShelfX write Set_ShelfX;
    property ShelfY: Double read Get_ShelfY write Set_ShelfY;
  end;

// *********************************************************************//
// DispIntf:  IRoughDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0A192AC5-D8BC-43E9-8FC7-ACF32578DDB4}
// *********************************************************************//
  IRoughDisp = dispinterface
    ['{0A192AC5-D8BC-43E9-8FC7-ACF32578DDB4}']
    property BaseObject: IDrawingObject dispid 1;
    property X0: Double dispid 2;
    property Y0: Double dispid 3;
    property ShelfX: Double dispid 4;
    property ShelfY: Double dispid 5;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ILeaders
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BA2D820C-0DB9-47C6-A32D-34C7D8BA1B2F}
// *********************************************************************//
  ILeaders = interface(IDrawingObjects)
    ['{BA2D820C-0DB9-47C6-A32D-34C7D8BA1B2F}']
    function  Get_Leader(Index: OleVariant): IBaseLeader; safecall;
    function  Add(DimType: DrawingObjectTypeEnum): IBaseLeader; safecall;
    property Leader[Index: OleVariant]: IBaseLeader read Get_Leader;
  end;

// *********************************************************************//
// DispIntf:  ILeadersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {BA2D820C-0DB9-47C6-A32D-34C7D8BA1B2F}
// *********************************************************************//
  ILeadersDisp = dispinterface
    ['{BA2D820C-0DB9-47C6-A32D-34C7D8BA1B2F}']
    property Leader[Index: OleVariant]: IBaseLeader readonly dispid 1;
    function  Add(DimType: DrawingObjectTypeEnum): IBaseLeader; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBaseLeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1AF590A9-C339-477A-9F22-799C04D20BB4}
// *********************************************************************//
  IBaseLeader = interface(IDrawingObject)
    ['{1AF590A9-C339-477A-9F22-799C04D20BB4}']
    function  Get_ArrowType: ksArrowEnum; safecall;
    procedure Set_ArrowType(Result: ksArrowEnum); safecall;
    property ArrowType: ksArrowEnum read Get_ArrowType write Set_ArrowType;
  end;

// *********************************************************************//
// DispIntf:  IBaseLeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {1AF590A9-C339-477A-9F22-799C04D20BB4}
// *********************************************************************//
  IBaseLeaderDisp = dispinterface
    ['{1AF590A9-C339-477A-9F22-799C04D20BB4}']
    property ArrowType: ksArrowEnum dispid 4001;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBases
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C607727C-6B0A-4FB6-AFCA-ED9D83F5C6B7}
// *********************************************************************//
  IBases = interface(IDrawingObjects)
    ['{C607727C-6B0A-4FB6-AFCA-ED9D83F5C6B7}']
    function  Get_Base(Index: OleVariant): IBase; safecall;
    function  Add: IBase; safecall;
    property Base[Index: OleVariant]: IBase read Get_Base;
  end;

// *********************************************************************//
// DispIntf:  IBasesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C607727C-6B0A-4FB6-AFCA-ED9D83F5C6B7}
// *********************************************************************//
  IBasesDisp = dispinterface
    ['{C607727C-6B0A-4FB6-AFCA-ED9D83F5C6B7}']
    property Base[Index: OleVariant]: IBase readonly dispid 1;
    function  Add: IBase; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBase
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {01CDFD67-69EA-4289-8F42-5B01BB9BF70B}
// *********************************************************************//
  IBase = interface(IDrawingObject)
    ['{01CDFD67-69EA-4289-8F42-5B01BB9BF70B}']
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Object1: IDrawingObject); safecall;
    function  Get_X0: Double; safecall;
    procedure Set_X0(Result: Double); safecall;
    function  Get_Y0: Double; safecall;
    procedure Set_Y0(Result: Double); safecall;
    function  Get_BranchX: Double; safecall;
    procedure Set_BranchX(Result: Double); safecall;
    function  Get_BranchY: Double; safecall;
    procedure Set_BranchY(Result: Double); safecall;
    function  Get_DrawType: WordBool; safecall;
    procedure Set_DrawType(Result: WordBool); safecall;
    function  Get_AutoSorted: WordBool; safecall;
    procedure Set_AutoSorted(Result: WordBool); safecall;
    function  Get_Text: IText; safecall;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property X0: Double read Get_X0 write Set_X0;
    property Y0: Double read Get_Y0 write Set_Y0;
    property BranchX: Double read Get_BranchX write Set_BranchX;
    property BranchY: Double read Get_BranchY write Set_BranchY;
    property DrawType: WordBool read Get_DrawType write Set_DrawType;
    property AutoSorted: WordBool read Get_AutoSorted write Set_AutoSorted;
    property Text: IText read Get_Text;
  end;

// *********************************************************************//
// DispIntf:  IBaseDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {01CDFD67-69EA-4289-8F42-5B01BB9BF70B}
// *********************************************************************//
  IBaseDisp = dispinterface
    ['{01CDFD67-69EA-4289-8F42-5B01BB9BF70B}']
    property BaseObject: IDrawingObject dispid 1;
    property X0: Double dispid 2;
    property Y0: Double dispid 3;
    property BranchX: Double dispid 4;
    property BranchY: Double dispid 5;
    property DrawType: WordBool dispid 6;
    property AutoSorted: WordBool dispid 7;
    property Text: IText readonly dispid 8;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITolerances
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {97CDD55F-3C64-469B-B26E-A927D3300B6C}
// *********************************************************************//
  ITolerances = interface(IDrawingObjects)
    ['{97CDD55F-3C64-469B-B26E-A927D3300B6C}']
    function  Get_Tolerance(Index: OleVariant): ITolerance; safecall;
    function  Add: ITolerance; safecall;
    property Tolerance[Index: OleVariant]: ITolerance read Get_Tolerance;
  end;

// *********************************************************************//
// DispIntf:  ITolerancesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {97CDD55F-3C64-469B-B26E-A927D3300B6C}
// *********************************************************************//
  ITolerancesDisp = dispinterface
    ['{97CDD55F-3C64-469B-B26E-A927D3300B6C}']
    property Tolerance[Index: OleVariant]: ITolerance readonly dispid 1;
    function  Add: ITolerance; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ITolerance
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {42DEF911-ADB2-478C-85F1-D5FEFA262EEC}
// *********************************************************************//
  ITolerance = interface(IDrawingObject)
    ['{42DEF911-ADB2-478C-85F1-D5FEFA262EEC}']
    function  Get_ArrowType(Index: Integer): WordBool; safecall;
    procedure Set_ArrowType(Index: Integer; Result: WordBool); safecall;
    function  Get_BranchPos(Index: Integer): ksTablePointEnum; safecall;
    procedure Set_BranchPos(Index: Integer; Result: ksTablePointEnum); safecall;
    property ArrowType[Index: Integer]: WordBool read Get_ArrowType write Set_ArrowType;
    property BranchPos[Index: Integer]: ksTablePointEnum read Get_BranchPos write Set_BranchPos;
  end;

// *********************************************************************//
// DispIntf:  IToleranceDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {42DEF911-ADB2-478C-85F1-D5FEFA262EEC}
// *********************************************************************//
  IToleranceDisp = dispinterface
    ['{42DEF911-ADB2-478C-85F1-D5FEFA262EEC}']
    property ArrowType[Index: Integer]: WordBool dispid 1;
    property BranchPos[Index: Integer]: ksTablePointEnum dispid 2;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingTables
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DF92DACE-BDC6-4341-86DA-3A9C8DCFDEFE}
// *********************************************************************//
  IDrawingTables = interface(IDrawingObjects)
    ['{DF92DACE-BDC6-4341-86DA-3A9C8DCFDEFE}']
    function  Get_DrawingTable(Index: OleVariant): IDrawingTable; safecall;
    function  Add(RowsCount: Integer; ColumnsCount: Integer; RowHeigh: Double; 
                  ColumnsWidth: Double; TitlePos: ksTableTileLayoutEnum): IDrawingTable; safecall;
    function  Load(const FileName: WideString): IDrawingTable; safecall;
    property DrawingTable[Index: OleVariant]: IDrawingTable read Get_DrawingTable;
  end;

// *********************************************************************//
// DispIntf:  IDrawingTablesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DF92DACE-BDC6-4341-86DA-3A9C8DCFDEFE}
// *********************************************************************//
  IDrawingTablesDisp = dispinterface
    ['{DF92DACE-BDC6-4341-86DA-3A9C8DCFDEFE}']
    property DrawingTable[Index: OleVariant]: IDrawingTable readonly dispid 1;
    function  Add(RowsCount: Integer; ColumnsCount: Integer; RowHeigh: Double; 
                  ColumnsWidth: Double; TitlePos: ksTableTileLayoutEnum): IDrawingTable; dispid 2;
    function  Load(const FileName: WideString): IDrawingTable; dispid 3;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IDrawingTable
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9B421BDA-0444-4A68-B69C-1C05D05C9D28}
// *********************************************************************//
  IDrawingTable = interface(IDrawingObject)
    ['{9B421BDA-0444-4A68-B69C-1C05D05C9D28}']
    function  Get_X: Double; safecall;
    procedure Set_X(Result: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Y(Result: Double); safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_FixedCellsSize(PVal: WordBool); safecall;
    function  Get_FixedCellsSize: WordBool; safecall;
    procedure Set_FixedRowCount(PVal: WordBool); safecall;
    function  Get_FixedRowCount: WordBool; safecall;
    procedure Set_FixedColumnCount(PVal: WordBool); safecall;
    function  Get_FixedColumnCount: WordBool; safecall;
    function  Save(const FileName: WideString): WordBool; safecall;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Angle: Double read Get_Angle write Set_Angle;
    property FixedCellsSize: WordBool read Get_FixedCellsSize write Set_FixedCellsSize;
    property FixedRowCount: WordBool read Get_FixedRowCount write Set_FixedRowCount;
    property FixedColumnCount: WordBool read Get_FixedColumnCount write Set_FixedColumnCount;
  end;

// *********************************************************************//
// DispIntf:  IDrawingTableDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9B421BDA-0444-4A68-B69C-1C05D05C9D28}
// *********************************************************************//
  IDrawingTableDisp = dispinterface
    ['{9B421BDA-0444-4A68-B69C-1C05D05C9D28}']
    property X: Double dispid 1;
    property Y: Double dispid 2;
    property Angle: Double dispid 3;
    property FixedCellsSize: WordBool dispid 4;
    property FixedRowCount: WordBool dispid 5;
    property FixedColumnCount: WordBool dispid 6;
    function  Save(const FileName: WideString): WordBool; dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IViewPointers
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {08B45C97-6F86-4809-BBC3-78F216BD0430}
// *********************************************************************//
  IViewPointers = interface(IDrawingObjects)
    ['{08B45C97-6F86-4809-BBC3-78F216BD0430}']
    function  Get_ViewPointer(Index: OleVariant): IViewPointer; safecall;
    function  Add: IViewPointer; safecall;
    property ViewPointer[Index: OleVariant]: IViewPointer read Get_ViewPointer;
  end;

// *********************************************************************//
// DispIntf:  IViewPointersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {08B45C97-6F86-4809-BBC3-78F216BD0430}
// *********************************************************************//
  IViewPointersDisp = dispinterface
    ['{08B45C97-6F86-4809-BBC3-78F216BD0430}']
    property ViewPointer[Index: OleVariant]: IViewPointer readonly dispid 1;
    function  Add: IViewPointer; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IViewPointer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3EE98177-63E8-4C48-89AD-3D5CCCF84D72}
// *********************************************************************//
  IViewPointer = interface(IDrawingObject)
    ['{3EE98177-63E8-4C48-89AD-3D5CCCF84D72}']
    function  Get_X1: Double; safecall;
    procedure Set_X1(Result: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_Y1(Result: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_X2(Result: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Y2(Result: Double); safecall;
    function  Get_TextX: Double; safecall;
    procedure Set_TextX(Result: Double); safecall;
    function  Get_TextY: Double; safecall;
    procedure Set_TextY(Result: Double); safecall;
    function  Get_AutoSorted: WordBool; safecall;
    procedure Set_AutoSorted(Result: WordBool); safecall;
    function  Get_AutoSheet: WordBool; safecall;
    procedure Set_AutoSheet(Result: WordBool); safecall;
    function  Get_AutoZone: WordBool; safecall;
    procedure Set_AutoZone(Result: WordBool); safecall;
    function  Get_Text: IText; safecall;
    function  Get_AdditionalText: IText; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property TextX: Double read Get_TextX write Set_TextX;
    property TextY: Double read Get_TextY write Set_TextY;
    property AutoSorted: WordBool read Get_AutoSorted write Set_AutoSorted;
    property AutoSheet: WordBool read Get_AutoSheet write Set_AutoSheet;
    property AutoZone: WordBool read Get_AutoZone write Set_AutoZone;
    property Text: IText read Get_Text;
    property AdditionalText: IText read Get_AdditionalText;
  end;

// *********************************************************************//
// DispIntf:  IViewPointerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3EE98177-63E8-4C48-89AD-3D5CCCF84D72}
// *********************************************************************//
  IViewPointerDisp = dispinterface
    ['{3EE98177-63E8-4C48-89AD-3D5CCCF84D72}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property TextX: Double dispid 5;
    property TextY: Double dispid 6;
    property AutoSorted: WordBool dispid 7;
    property AutoSheet: WordBool dispid 8;
    property AutoZone: WordBool dispid 9;
    property Text: IText readonly dispid 10;
    property AdditionalText: IText readonly dispid 11;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICentreMarkers
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A0533211-CF52-4AB5-A172-3DC7D94276D1}
// *********************************************************************//
  ICentreMarkers = interface(IDrawingObjects)
    ['{A0533211-CF52-4AB5-A172-3DC7D94276D1}']
    function  Get_CentreMarker(Index: OleVariant): ICentreMarker; safecall;
    function  Add: ICentreMarker; safecall;
    property CentreMarker[Index: OleVariant]: ICentreMarker read Get_CentreMarker;
  end;

// *********************************************************************//
// DispIntf:  ICentreMarkersDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A0533211-CF52-4AB5-A172-3DC7D94276D1}
// *********************************************************************//
  ICentreMarkersDisp = dispinterface
    ['{A0533211-CF52-4AB5-A172-3DC7D94276D1}']
    property CentreMarker[Index: OleVariant]: ICentreMarker readonly dispid 1;
    function  Add: ICentreMarker; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICentreMarker
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8FE1CADA-DE72-4A55-B303-EAF1F4748CF6}
// *********************************************************************//
  ICentreMarker = interface(IDrawingObject)
    ['{8FE1CADA-DE72-4A55-B303-EAF1F4748CF6}']
    function  Get_BaseObject: IDrawingObject; safecall;
    procedure Set_BaseObject(const Result: IDrawingObject); safecall;
    procedure Set_X(PVal: Double); safecall;
    function  Get_X: Double; safecall;
    procedure Set_Y(PVal: Double); safecall;
    function  Get_Y: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_SignType(PVal: ksCentreMarkerEnum); safecall;
    function  Get_SignType: ksCentreMarkerEnum; safecall;
    procedure Set_SemiAxisAutoLength(AxisType: ksSemiAxisTypeEnum; PVal: WordBool); safecall;
    function  Get_SemiAxisAutoLength(AxisType: ksSemiAxisTypeEnum): WordBool; safecall;
    procedure Set_SemiAxisLength(AxisType: ksSemiAxisTypeEnum; PVal: Double); safecall;
    function  Get_SemiAxisLength(AxisType: ksSemiAxisTypeEnum): Double; safecall;
    procedure Set_CrosshairSize(PVal: Double); safecall;
    function  Get_CrosshairSize: Double; safecall;
    procedure Set_CrosshairSizeModify(PVal: WordBool); safecall;
    function  Get_CrosshairSizeModify: WordBool; safecall;
    property BaseObject: IDrawingObject read Get_BaseObject write Set_BaseObject;
    property X: Double read Get_X write Set_X;
    property Y: Double read Get_Y write Set_Y;
    property Angle: Double read Get_Angle write Set_Angle;
    property SignType: ksCentreMarkerEnum read Get_SignType write Set_SignType;
    property SemiAxisAutoLength[AxisType: ksSemiAxisTypeEnum]: WordBool read Get_SemiAxisAutoLength write Set_SemiAxisAutoLength;
    property SemiAxisLength[AxisType: ksSemiAxisTypeEnum]: Double read Get_SemiAxisLength write Set_SemiAxisLength;
    property CrosshairSize: Double read Get_CrosshairSize write Set_CrosshairSize;
    property CrosshairSizeModify: WordBool read Get_CrosshairSizeModify write Set_CrosshairSizeModify;
  end;

// *********************************************************************//
// DispIntf:  ICentreMarkerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8FE1CADA-DE72-4A55-B303-EAF1F4748CF6}
// *********************************************************************//
  ICentreMarkerDisp = dispinterface
    ['{8FE1CADA-DE72-4A55-B303-EAF1F4748CF6}']
    property BaseObject: IDrawingObject dispid 1;
    property X: Double dispid 2;
    property Y: Double dispid 3;
    property Angle: Double dispid 4;
    property SignType: ksCentreMarkerEnum dispid 5;
    property SemiAxisAutoLength[AxisType: ksSemiAxisTypeEnum]: WordBool dispid 6;
    property SemiAxisLength[AxisType: ksSemiAxisTypeEnum]: Double dispid 7;
    property CrosshairSize: Double dispid 8;
    property CrosshairSizeModify: WordBool dispid 9;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRemoteElements
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {88427A6B-00AF-46E2-9B95-BC8348C2162A}
// *********************************************************************//
  IRemoteElements = interface(IDrawingObjects)
    ['{88427A6B-00AF-46E2-9B95-BC8348C2162A}']
    function  Get_RemoteElement(Index: OleVariant): IRemoteElement; safecall;
    function  Add: IRemoteElement; safecall;
    property RemoteElement[Index: OleVariant]: IRemoteElement read Get_RemoteElement;
  end;

// *********************************************************************//
// DispIntf:  IRemoteElementsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {88427A6B-00AF-46E2-9B95-BC8348C2162A}
// *********************************************************************//
  IRemoteElementsDisp = dispinterface
    ['{88427A6B-00AF-46E2-9B95-BC8348C2162A}']
    property RemoteElement[Index: OleVariant]: IRemoteElement readonly dispid 1;
    function  Add: IRemoteElement; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IRemoteElement
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A9D96CE2-9FE4-494E-87B2-20122EAC2AE4}
// *********************************************************************//
  IRemoteElement = interface(IUnitMarking)
    ['{A9D96CE2-9FE4-494E-87B2-20122EAC2AE4}']
    function  Get_AutoSorted: WordBool; safecall;
    procedure Set_AutoSorted(Result: WordBool); safecall;
    function  Get_AutoSheet: WordBool; safecall;
    procedure Set_AutoSheet(Result: WordBool); safecall;
    function  Get_AutoZone: WordBool; safecall;
    procedure Set_AutoZone(Result: WordBool); safecall;
    function  Get_AdditionalText: IText; safecall;
    property AutoSorted: WordBool read Get_AutoSorted write Set_AutoSorted;
    property AutoSheet: WordBool read Get_AutoSheet write Set_AutoSheet;
    property AutoZone: WordBool read Get_AutoZone write Set_AutoZone;
    property AdditionalText: IText read Get_AdditionalText;
  end;

// *********************************************************************//
// DispIntf:  IRemoteElementDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A9D96CE2-9FE4-494E-87B2-20122EAC2AE4}
// *********************************************************************//
  IRemoteElementDisp = dispinterface
    ['{A9D96CE2-9FE4-494E-87B2-20122EAC2AE4}']
    property AutoSorted: WordBool dispid 2001;
    property AutoSheet: WordBool dispid 2002;
    property AutoZone: WordBool dispid 2003;
    property AdditionalText: IText readonly dispid 2004;
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property Radius: Double dispid 3;
    property Height: Double dispid 4;
    property Width: Double dispid 5;
    property ShelfDirection: ksShelfDirectionEnum dispid 6;
    property ShelfX: Double dispid 7;
    property ShelfY: Double dispid 8;
    property Form: ksContourFormEnum dispid 9;
    property TextUp: IText readonly dispid 10;
    property TextDown: IText readonly dispid 11;
    property FilletRadius: Double dispid 12;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAxisLines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C567E700-E163-4C8F-B329-931BB93D0223}
// *********************************************************************//
  IAxisLines = interface(IDrawingObjects)
    ['{C567E700-E163-4C8F-B329-931BB93D0223}']
    function  Get_AxisLine(Index: OleVariant): IAxisLine; safecall;
    function  Add: IAxisLine; safecall;
    property AxisLine[Index: OleVariant]: IAxisLine read Get_AxisLine;
  end;

// *********************************************************************//
// DispIntf:  IAxisLinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C567E700-E163-4C8F-B329-931BB93D0223}
// *********************************************************************//
  IAxisLinesDisp = dispinterface
    ['{C567E700-E163-4C8F-B329-931BB93D0223}']
    property AxisLine[Index: OleVariant]: IAxisLine readonly dispid 1;
    function  Add: IAxisLine; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IAxisLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C5CAEBD-70A9-41DB-9F74-F9760D822D95}
// *********************************************************************//
  IAxisLine = interface(IDrawingObject)
    ['{5C5CAEBD-70A9-41DB-9F74-F9760D822D95}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Angle: Double read Get_Angle write Set_Angle;
    property Length: Double read Get_Length write Set_Length;
  end;

// *********************************************************************//
// DispIntf:  IAxisLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {5C5CAEBD-70A9-41DB-9F74-F9760D822D95}
// *********************************************************************//
  IAxisLineDisp = dispinterface
    ['{5C5CAEBD-70A9-41DB-9F74-F9760D822D95}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Angle: Double dispid 5;
    property Length: Double dispid 6;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IWaveLines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C1F0A911-8B4A-48B5-9611-5250D3FC2ACA}
// *********************************************************************//
  IWaveLines = interface(IDrawingObjects)
    ['{C1F0A911-8B4A-48B5-9611-5250D3FC2ACA}']
    function  Get_WaveLine(Index: OleVariant): IWaveLine; safecall;
    function  Add: IWaveLine; safecall;
    property WaveLine[Index: OleVariant]: IWaveLine read Get_WaveLine;
  end;

// *********************************************************************//
// DispIntf:  IWaveLinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C1F0A911-8B4A-48B5-9611-5250D3FC2ACA}
// *********************************************************************//
  IWaveLinesDisp = dispinterface
    ['{C1F0A911-8B4A-48B5-9611-5250D3FC2ACA}']
    property WaveLine[Index: OleVariant]: IWaveLine readonly dispid 1;
    function  Add: IWaveLine; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IWaveLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FA2012E1-A983-47D3-9D43-B8DC619AC554}
// *********************************************************************//
  IWaveLine = interface(IDrawingObject)
    ['{FA2012E1-A983-47D3-9D43-B8DC619AC554}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_HalfWavesCount(PVal: Integer); safecall;
    function  Get_HalfWavesCount: Integer; safecall;
    procedure Set_WaveLength(PVal: Double); safecall;
    function  Get_WaveLength: Double; safecall;
    function  SetWavesAmplitude(Representation: WordBool; NewVal: Double): WordBool; safecall;
    function  Get_WavesAmplitude: Double; safecall;
    function  Get_WavesAmplitudeRepresentation: WordBool; safecall;
    procedure Set_AutoWavesAmplitude(PVal: WordBool); safecall;
    function  Get_AutoWavesAmplitude: WordBool; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Angle: Double read Get_Angle write Set_Angle;
    property Length: Double read Get_Length write Set_Length;
    property Style: Integer read Get_Style write Set_Style;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property HalfWavesCount: Integer read Get_HalfWavesCount write Set_HalfWavesCount;
    property WaveLength: Double read Get_WaveLength write Set_WaveLength;
    property WavesAmplitude: Double read Get_WavesAmplitude;
    property WavesAmplitudeRepresentation: WordBool read Get_WavesAmplitudeRepresentation;
    property AutoWavesAmplitude: WordBool read Get_AutoWavesAmplitude write Set_AutoWavesAmplitude;
  end;

// *********************************************************************//
// DispIntf:  IWaveLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FA2012E1-A983-47D3-9D43-B8DC619AC554}
// *********************************************************************//
  IWaveLineDisp = dispinterface
    ['{FA2012E1-A983-47D3-9D43-B8DC619AC554}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Angle: Double dispid 5;
    property Length: Double dispid 6;
    property Style: Integer dispid 7;
    property Direction: WordBool dispid 8;
    property HalfWavesCount: Integer dispid 9;
    property WaveLength: Double dispid 10;
    function  SetWavesAmplitude(Representation: WordBool; NewVal: Double): WordBool; dispid 11;
    property WavesAmplitude: Double readonly dispid 12;
    property WavesAmplitudeRepresentation: WordBool readonly dispid 13;
    property AutoWavesAmplitude: WordBool dispid 14;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBrokenLines
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2A7EADC0-5E79-4DDB-85D5-E3EDB743480D}
// *********************************************************************//
  IBrokenLines = interface(IDrawingObjects)
    ['{2A7EADC0-5E79-4DDB-85D5-E3EDB743480D}']
    function  Get_BrokenLine(Index: OleVariant): IBrokenLine; safecall;
    function  Add: IBrokenLine; safecall;
    property BrokenLine[Index: OleVariant]: IBrokenLine read Get_BrokenLine;
  end;

// *********************************************************************//
// DispIntf:  IBrokenLinesDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2A7EADC0-5E79-4DDB-85D5-E3EDB743480D}
// *********************************************************************//
  IBrokenLinesDisp = dispinterface
    ['{2A7EADC0-5E79-4DDB-85D5-E3EDB743480D}']
    property BrokenLine[Index: OleVariant]: IBrokenLine readonly dispid 1;
    function  Add: IBrokenLine; dispid 2;
    property Item[Index: OleVariant]: IDrawingObject readonly dispid 0; default;
    property _NewEnum: IUnknown readonly dispid -4;
    property Count: Integer readonly dispid 2000;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBrokenLine
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2482EB44-5625-4FB9-A46B-781426B02510}
// *********************************************************************//
  IBrokenLine = interface(IDrawingObject)
    ['{2482EB44-5625-4FB9-A46B-781426B02510}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    function  Get_Style: Integer; safecall;
    procedure Set_Style(Result: Integer); safecall;
    procedure Set_JutValue(PVal: Double); safecall;
    function  Get_JutValue: Double; safecall;
    procedure Set_AutoJutValue(PVal: WordBool); safecall;
    function  Get_AutoJutValue: WordBool; safecall;
    procedure Set_BreaksCount(PVal: Integer); safecall;
    function  Get_BreaksCount: Integer; safecall;
    procedure Set_BreakAmplitude(PVal: Double); safecall;
    function  Get_BreakAmplitude: Double; safecall;
    procedure Set_AutoBreakAmplitude(PVal: WordBool); safecall;
    function  Get_AutoBreakAmplitude: WordBool; safecall;
    procedure Set_BreakDisplacement(PVal: Double); safecall;
    function  Get_BreakDisplacement: Double; safecall;
    procedure Set_Type1(PVal: WordBool); safecall;
    function  Get_Type1: WordBool; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Length: Double read Get_Length write Set_Length;
    property Angle: Double read Get_Angle write Set_Angle;
    property Style: Integer read Get_Style write Set_Style;
    property JutValue: Double read Get_JutValue write Set_JutValue;
    property AutoJutValue: WordBool read Get_AutoJutValue write Set_AutoJutValue;
    property BreaksCount: Integer read Get_BreaksCount write Set_BreaksCount;
    property BreakAmplitude: Double read Get_BreakAmplitude write Set_BreakAmplitude;
    property AutoBreakAmplitude: WordBool read Get_AutoBreakAmplitude write Set_AutoBreakAmplitude;
    property BreakDisplacement: Double read Get_BreakDisplacement write Set_BreakDisplacement;
    property Type1: WordBool read Get_Type1 write Set_Type1;
  end;

// *********************************************************************//
// DispIntf:  IBrokenLineDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {2482EB44-5625-4FB9-A46B-781426B02510}
// *********************************************************************//
  IBrokenLineDisp = dispinterface
    ['{2482EB44-5625-4FB9-A46B-781426B02510}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Length: Double dispid 5;
    property Angle: Double dispid 6;
    property Style: Integer dispid 7;
    property JutValue: Double dispid 8;
    property AutoJutValue: WordBool dispid 9;
    property BreaksCount: Integer dispid 10;
    property BreakAmplitude: Double dispid 11;
    property AutoBreakAmplitude: WordBool dispid 12;
    property BreakDisplacement: Double dispid 13;
    property Type1: WordBool dispid 14;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBreakAngleDimension
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6ED408A-C2A8-47DD-8EC3-011A7AD60335}
// *********************************************************************//
  IBreakAngleDimension = interface(IAngleDimension)
    ['{F6ED408A-C2A8-47DD-8EC3-011A7AD60335}']
  end;

// *********************************************************************//
// DispIntf:  IBreakAngleDimensionDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {F6ED408A-C2A8-47DD-8EC3-011A7AD60335}
// *********************************************************************//
  IBreakAngleDimensionDisp = dispinterface
    ['{F6ED408A-C2A8-47DD-8EC3-011A7AD60335}']
    property Xc: Double dispid 1;
    property Yc: Double dispid 2;
    property Radius: Double dispid 3;
    property Angle1: Double dispid 4;
    property Angle2: Double dispid 5;
    property X1: Double dispid 6;
    property Y1: Double dispid 7;
    property X2: Double dispid 8;
    property Y2: Double dispid 9;
    property BaseObject1: IDrawingObject dispid 10;
    property BaseObject2: IDrawingObject dispid 11;
    property DimensionType: ksAngleDimTypeEnum dispid 12;
    property ShelfX: Double dispid 13;
    property ShelfY: Double dispid 14;
    property Direction: WordBool dispid 15;
    property X3: Double dispid 16;
    property Y3: Double dispid 17;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IBranchs
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C8A55AB3-D6DD-49B8-95F0-716475855C10}
// *********************************************************************//
  IBranchs = interface(IDispatch)
    ['{C8A55AB3-D6DD-49B8-95F0-716475855C10}']
    function  Get_X0: Double; safecall;
    procedure Set_X0(Result: Double); safecall;
    function  Get_Y0: Double; safecall;
    procedure Set_Y0(Result: Double); safecall;
    function  Get_BranchCount: Integer; safecall;
    procedure Set_BranchPoints(Index: Integer; PVal: OleVariant); safecall;
    function  Get_BranchPoints(Index: Integer): OleVariant; safecall;
    function  Get_BranchPointsCount(Index: Integer): Integer; safecall;
    procedure Set_BranchX(Index: Integer; PVal: Double); safecall;
    function  Get_BranchX(Index: Integer): Double; safecall;
    procedure Set_BranchY(Index: Integer; PVal: Double); safecall;
    function  Get_BranchY(Index: Integer): Double; safecall;
    function  AddBranch(Index: Integer; Points: OleVariant): WordBool; safecall;
    function  AddBranchByPoint(Index: Integer; X: Double; Y: Double): WordBool; safecall;
    function  DeleteBranch(Index: Integer): WordBool; safecall;
    property X0: Double read Get_X0 write Set_X0;
    property Y0: Double read Get_Y0 write Set_Y0;
    property BranchCount: Integer read Get_BranchCount;
    property BranchPoints[Index: Integer]: OleVariant read Get_BranchPoints write Set_BranchPoints;
    property BranchPointsCount[Index: Integer]: Integer read Get_BranchPointsCount;
    property BranchX[Index: Integer]: Double read Get_BranchX write Set_BranchX;
    property BranchY[Index: Integer]: Double read Get_BranchY write Set_BranchY;
  end;

// *********************************************************************//
// DispIntf:  IBranchsDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C8A55AB3-D6DD-49B8-95F0-716475855C10}
// *********************************************************************//
  IBranchsDisp = dispinterface
    ['{C8A55AB3-D6DD-49B8-95F0-716475855C10}']
    property X0: Double dispid 5001;
    property Y0: Double dispid 5002;
    property BranchCount: Integer readonly dispid 5003;
    property BranchPoints[Index: Integer]: OleVariant dispid 5004;
    property BranchPointsCount[Index: Integer]: Integer readonly dispid 5005;
    property BranchX[Index: Integer]: Double dispid 5006;
    property BranchY[Index: Integer]: Double dispid 5007;
    function  AddBranch(Index: Integer; Points: OleVariant): WordBool; dispid 5008;
    function  AddBranchByPoint(Index: Integer; X: Double; Y: Double): WordBool; dispid 5009;
    function  DeleteBranch(Index: Integer): WordBool; dispid 5010;
  end;

// *********************************************************************//
// Interface: ILeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A7419920-06B8-4F34-AC1E-9D48E0ED9DCB}
// *********************************************************************//
  ILeader = interface(IDispatch)
    ['{A7419920-06B8-4F34-AC1E-9D48E0ED9DCB}']
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(Result: ksShelfDirectionEnum); safecall;
    function  Get_SignType: ksLeaderSignEnum; safecall;
    procedure Set_SignType(Result: ksLeaderSignEnum); safecall;
    function  Get_Arround: WordBool; safecall;
    procedure Set_Arround(Result: WordBool); safecall;
    function  Get_TextOnShelf: IText; safecall;
    function  Get_TextUnderShelf: IText; safecall;
    function  Get_TextOnBranch: IText; safecall;
    function  Get_TextUnderBranch: IText; safecall;
    function  Get_TextAfterShelf: IText; safecall;
    procedure Set_BranchBegin(Index: Integer; PVal: WordBool); safecall;
    function  Get_BranchBegin(Index: Integer): WordBool; safecall;
    function  Get_ParallelBranch: WordBool; safecall;
    procedure Set_ParallelBranch(PVal: WordBool); safecall;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property SignType: ksLeaderSignEnum read Get_SignType write Set_SignType;
    property Arround: WordBool read Get_Arround write Set_Arround;
    property TextOnShelf: IText read Get_TextOnShelf;
    property TextUnderShelf: IText read Get_TextUnderShelf;
    property TextOnBranch: IText read Get_TextOnBranch;
    property TextUnderBranch: IText read Get_TextUnderBranch;
    property TextAfterShelf: IText read Get_TextAfterShelf;
    property BranchBegin[Index: Integer]: WordBool read Get_BranchBegin write Set_BranchBegin;
    property ParallelBranch: WordBool read Get_ParallelBranch write Set_ParallelBranch;
  end;

// *********************************************************************//
// DispIntf:  ILeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A7419920-06B8-4F34-AC1E-9D48E0ED9DCB}
// *********************************************************************//
  ILeaderDisp = dispinterface
    ['{A7419920-06B8-4F34-AC1E-9D48E0ED9DCB}']
    property ShelfDirection: ksShelfDirectionEnum dispid 1501;
    property SignType: ksLeaderSignEnum dispid 1502;
    property Arround: WordBool dispid 1503;
    property TextOnShelf: IText readonly dispid 1504;
    property TextUnderShelf: IText readonly dispid 1505;
    property TextOnBranch: IText readonly dispid 1506;
    property TextUnderBranch: IText readonly dispid 1507;
    property TextAfterShelf: IText readonly dispid 1508;
    property BranchBegin[Index: Integer]: WordBool dispid 1509;
    property ParallelBranch: WordBool dispid 1510;
  end;

// *********************************************************************//
// Interface: IMarkLeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8A5D2A56-ECB6-4151-B1AC-F8548CD668CF}
// *********************************************************************//
  IMarkLeader = interface(IDispatch)
    ['{8A5D2A56-ECB6-4151-B1AC-F8548CD668CF}']
    function  Get_TextOnBranch: IText; safecall;
    function  Get_TextUnderBranch: IText; safecall;
    function  Get_Designation: IText; safecall;
    property TextOnBranch: IText read Get_TextOnBranch;
    property TextUnderBranch: IText read Get_TextUnderBranch;
    property Designation: IText read Get_Designation;
  end;

// *********************************************************************//
// DispIntf:  IMarkLeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {8A5D2A56-ECB6-4151-B1AC-F8548CD668CF}
// *********************************************************************//
  IMarkLeaderDisp = dispinterface
    ['{8A5D2A56-ECB6-4151-B1AC-F8548CD668CF}']
    property TextOnBranch: IText readonly dispid 1501;
    property TextUnderBranch: IText readonly dispid 1502;
    property Designation: IText readonly dispid 1503;
  end;

// *********************************************************************//
// Interface: IPositionLeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A8227628-4B9C-42C8-AE58-B3716A7EC1AF}
// *********************************************************************//
  IPositionLeader = interface(IDispatch)
    ['{A8227628-4B9C-42C8-AE58-B3716A7EC1AF}']
    function  Get_ShelfDirection: ksShelfDirectionEnum; safecall;
    procedure Set_ShelfDirection(Result: ksShelfDirectionEnum); safecall;
    function  Get_ShelfVisible: WordBool; safecall;
    procedure Set_ShelfVisible(Result: WordBool); safecall;
    function  Get_TextDirection: WordBool; safecall;
    procedure Set_TextDirection(Result: WordBool); safecall;
    function  Get_Form: ksPositionLederFormEnum; safecall;
    procedure Set_Form(Result: ksPositionLederFormEnum); safecall;
    function  Get_Positions: IText; safecall;
    function  Get_UnderPositionText: IText; safecall;
    function  Get_Horizontally: WordBool; safecall;
    procedure Set_Horizontally(Result: WordBool); safecall;
    property ShelfDirection: ksShelfDirectionEnum read Get_ShelfDirection write Set_ShelfDirection;
    property ShelfVisible: WordBool read Get_ShelfVisible write Set_ShelfVisible;
    property TextDirection: WordBool read Get_TextDirection write Set_TextDirection;
    property Form: ksPositionLederFormEnum read Get_Form write Set_Form;
    property Positions: IText read Get_Positions;
    property UnderPositionText: IText read Get_UnderPositionText;
    property Horizontally: WordBool read Get_Horizontally write Set_Horizontally;
  end;

// *********************************************************************//
// DispIntf:  IPositionLeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A8227628-4B9C-42C8-AE58-B3716A7EC1AF}
// *********************************************************************//
  IPositionLeaderDisp = dispinterface
    ['{A8227628-4B9C-42C8-AE58-B3716A7EC1AF}']
    property ShelfDirection: ksShelfDirectionEnum dispid 1501;
    property ShelfVisible: WordBool dispid 1502;
    property TextDirection: WordBool dispid 1503;
    property Form: ksPositionLederFormEnum dispid 1504;
    property Positions: IText readonly dispid 1505;
    property UnderPositionText: IText readonly dispid 1506;
    property Horizontally: WordBool dispid 1507;
  end;

// *********************************************************************//
// Interface: IChangeLeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CCFBE87D-1A3C-4C8B-ABE3-1C2319694314}
// *********************************************************************//
  IChangeLeader = interface(IDispatch)
    ['{CCFBE87D-1A3C-4C8B-ABE3-1C2319694314}']
    function  Get_SignType: ksChangeLeaderSignEnum; safecall;
    procedure Set_SignType(Result: ksChangeLeaderSignEnum); safecall;
    function  Get_SignHeight: Double; safecall;
    procedure Set_SignHeight(Result: Double); safecall;
    function  Get_LeaderLength: Double; safecall;
    procedure Set_LeaderLength(Result: Double); safecall;
    function  Get_FullLeaderLength: WordBool; safecall;
    procedure Set_FullLeaderLength(Result: WordBool); safecall;
    function  Get_Designation: IText; safecall;
    property SignType: ksChangeLeaderSignEnum read Get_SignType write Set_SignType;
    property SignHeight: Double read Get_SignHeight write Set_SignHeight;
    property LeaderLength: Double read Get_LeaderLength write Set_LeaderLength;
    property FullLeaderLength: WordBool read Get_FullLeaderLength write Set_FullLeaderLength;
    property Designation: IText read Get_Designation;
  end;

// *********************************************************************//
// DispIntf:  IChangeLeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {CCFBE87D-1A3C-4C8B-ABE3-1C2319694314}
// *********************************************************************//
  IChangeLeaderDisp = dispinterface
    ['{CCFBE87D-1A3C-4C8B-ABE3-1C2319694314}']
    property SignType: ksChangeLeaderSignEnum dispid 1501;
    property SignHeight: Double dispid 1502;
    property LeaderLength: Double dispid 1503;
    property FullLeaderLength: WordBool dispid 1504;
    property Designation: IText readonly dispid 1505;
  end;

// *********************************************************************//
// Interface: IBrandLeader
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EEF8366B-7C8D-448B-9944-BE63E82C1543}
// *********************************************************************//
  IBrandLeader = interface(IDispatch)
    ['{EEF8366B-7C8D-448B-9944-BE63E82C1543}']
    function  Get_TextOnBranch: IText; safecall;
    function  Get_TextUnderBranch: IText; safecall;
    function  Get_Designation: IText; safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_Direction(Result: WordBool); safecall;
    property TextOnBranch: IText read Get_TextOnBranch;
    property TextUnderBranch: IText read Get_TextUnderBranch;
    property Designation: IText read Get_Designation;
    property Direction: WordBool read Get_Direction write Set_Direction;
  end;

// *********************************************************************//
// DispIntf:  IBrandLeaderDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EEF8366B-7C8D-448B-9944-BE63E82C1543}
// *********************************************************************//
  IBrandLeaderDisp = dispinterface
    ['{EEF8366B-7C8D-448B-9944-BE63E82C1543}']
    property TextOnBranch: IText readonly dispid 1501;
    property TextUnderBranch: IText readonly dispid 1502;
    property Designation: IText readonly dispid 1503;
    property Direction: WordBool dispid 1504;
  end;

// *********************************************************************//
// Interface: IToleranceParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {46E2F216-6BCE-4863-9DDC-CC08DC0016F7}
// *********************************************************************//
  IToleranceParam = interface(IDispatch)
    ['{46E2F216-6BCE-4863-9DDC-CC08DC0016F7}']
    function  Get_BasePointPos: ksTablePointEnum; safecall;
    procedure Set_BasePointPos(Result: ksTablePointEnum); safecall;
    function  Get_Vertical: WordBool; safecall;
    procedure Set_Vertical(Result: WordBool); safecall;
    function  Get_Table: ITable; safecall;
    function  Get_Sign: Integer; safecall;
    procedure Set_Sign(Result: Integer); safecall;
    function  Get_PrefixSign: ksTolerancePrefixSignEnum; safecall;
    procedure Set_PrefixSign(Result: ksTolerancePrefixSignEnum); safecall;
    function  Get_Value: WideString; safecall;
    procedure Set_Value(const PVal: WideString); safecall;
    function  Get_SuffixSign: ksToleranceSuffixSignEnum; safecall;
    procedure Set_SuffixSign(Result: ksToleranceSuffixSignEnum); safecall;
    function  Get_BaseValue1: ITextLine; safecall;
    function  Get_BaseSign1: ksToleranceSuffixSignEnum; safecall;
    procedure Set_BaseSign1(Result: ksToleranceSuffixSignEnum); safecall;
    function  Get_BaseValue2: ITextLine; safecall;
    function  Get_BaseSign2: ksToleranceSuffixSignEnum; safecall;
    procedure Set_BaseSign2(Result: ksToleranceSuffixSignEnum); safecall;
    property BasePointPos: ksTablePointEnum read Get_BasePointPos write Set_BasePointPos;
    property Vertical: WordBool read Get_Vertical write Set_Vertical;
    property Table: ITable read Get_Table;
    property Sign: Integer read Get_Sign write Set_Sign;
    property PrefixSign: ksTolerancePrefixSignEnum read Get_PrefixSign write Set_PrefixSign;
    property Value: WideString read Get_Value write Set_Value;
    property SuffixSign: ksToleranceSuffixSignEnum read Get_SuffixSign write Set_SuffixSign;
    property BaseValue1: ITextLine read Get_BaseValue1;
    property BaseSign1: ksToleranceSuffixSignEnum read Get_BaseSign1 write Set_BaseSign1;
    property BaseValue2: ITextLine read Get_BaseValue2;
    property BaseSign2: ksToleranceSuffixSignEnum read Get_BaseSign2 write Set_BaseSign2;
  end;

// *********************************************************************//
// DispIntf:  IToleranceParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {46E2F216-6BCE-4863-9DDC-CC08DC0016F7}
// *********************************************************************//
  IToleranceParamDisp = dispinterface
    ['{46E2F216-6BCE-4863-9DDC-CC08DC0016F7}']
    property BasePointPos: ksTablePointEnum dispid 1501;
    property Vertical: WordBool dispid 1502;
    property Table: ITable readonly dispid 1503;
    property Sign: Integer dispid 1504;
    property PrefixSign: ksTolerancePrefixSignEnum dispid 1505;
    property Value: WideString dispid 1506;
    property SuffixSign: ksToleranceSuffixSignEnum dispid 1507;
    property BaseValue1: ITextLine readonly dispid 1508;
    property BaseSign1: ksToleranceSuffixSignEnum dispid 1509;
    property BaseValue2: ITextLine readonly dispid 1510;
    property BaseSign2: ksToleranceSuffixSignEnum dispid 1511;
  end;

// *********************************************************************//
// Interface: IContourSegment
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AA485B32-FF45-4035-BFC4-AEE54E638344}
// *********************************************************************//
  IContourSegment = interface(IKompasAPIObject)
    ['{AA485B32-FF45-4035-BFC4-AEE54E638344}']
    function  Get_SegmentType: ksContourSegmentEnum; safecall;
    function  Get_Curve2D: ICurve2D; safecall;
    property SegmentType: ksContourSegmentEnum read Get_SegmentType;
    property Curve2D: ICurve2D read Get_Curve2D;
  end;

// *********************************************************************//
// DispIntf:  IContourSegmentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AA485B32-FF45-4035-BFC4-AEE54E638344}
// *********************************************************************//
  IContourSegmentDisp = dispinterface
    ['{AA485B32-FF45-4035-BFC4-AEE54E638344}']
    property SegmentType: ksContourSegmentEnum readonly dispid 2001;
    property Curve2D: ICurve2D readonly dispid 2002;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IContourLineSegment
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FB2432F1-8AE7-4D43-AFF2-A3A3BE226CFA}
// *********************************************************************//
  IContourLineSegment = interface(IContourSegment)
    ['{FB2432F1-8AE7-4D43-AFF2-A3A3BE226CFA}']
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_Length(PVal: Double); safecall;
    function  Get_Length: Double; safecall;
    procedure Set_Angle(PVal: Double); safecall;
    function  Get_Angle: Double; safecall;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property Length: Double read Get_Length write Set_Length;
    property Angle: Double read Get_Angle write Set_Angle;
  end;

// *********************************************************************//
// DispIntf:  IContourLineSegmentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {FB2432F1-8AE7-4D43-AFF2-A3A3BE226CFA}
// *********************************************************************//
  IContourLineSegmentDisp = dispinterface
    ['{FB2432F1-8AE7-4D43-AFF2-A3A3BE226CFA}']
    property X1: Double dispid 1;
    property Y1: Double dispid 2;
    property X2: Double dispid 3;
    property Y2: Double dispid 4;
    property Length: Double dispid 5;
    property Angle: Double dispid 6;
    property SegmentType: ksContourSegmentEnum readonly dispid 2001;
    property Curve2D: ICurve2D readonly dispid 2002;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IContourArc
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {ED4A6D97-4543-4842-B2C3-973FB0E90E87}
// *********************************************************************//
  IContourArc = interface(IContourSegment)
    ['{ED4A6D97-4543-4842-B2C3-973FB0E90E87}']
    procedure Set_Radius(PVal: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Direction(PVal: WordBool); safecall;
    function  Get_Direction: WordBool; safecall;
    procedure Set_Xc(PVal: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(PVal: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_X1(PVal: Double); safecall;
    function  Get_X1: Double; safecall;
    procedure Set_Y1(PVal: Double); safecall;
    function  Get_Y1: Double; safecall;
    procedure Set_X2(PVal: Double); safecall;
    function  Get_X2: Double; safecall;
    procedure Set_Y2(PVal: Double); safecall;
    function  Get_Y2: Double; safecall;
    procedure Set_X3(PVal: Double); safecall;
    function  Get_X3: Double; safecall;
    procedure Set_Y3(PVal: Double); safecall;
    function  Get_Y3: Double; safecall;
    procedure Set_Angle1(PVal: Double); safecall;
    function  Get_Angle1: Double; safecall;
    procedure Set_Angle2(PVal: Double); safecall;
    function  Get_Angle2: Double; safecall;
    property Radius: Double read Get_Radius write Set_Radius;
    property Direction: WordBool read Get_Direction write Set_Direction;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property X1: Double read Get_X1 write Set_X1;
    property Y1: Double read Get_Y1 write Set_Y1;
    property X2: Double read Get_X2 write Set_X2;
    property Y2: Double read Get_Y2 write Set_Y2;
    property X3: Double read Get_X3 write Set_X3;
    property Y3: Double read Get_Y3 write Set_Y3;
    property Angle1: Double read Get_Angle1 write Set_Angle1;
    property Angle2: Double read Get_Angle2 write Set_Angle2;
  end;

// *********************************************************************//
// DispIntf:  IContourArcDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {ED4A6D97-4543-4842-B2C3-973FB0E90E87}
// *********************************************************************//
  IContourArcDisp = dispinterface
    ['{ED4A6D97-4543-4842-B2C3-973FB0E90E87}']
    property Radius: Double dispid 1;
    property Direction: WordBool dispid 2;
    property Xc: Double dispid 3;
    property Yc: Double dispid 4;
    property X1: Double dispid 5;
    property Y1: Double dispid 6;
    property X2: Double dispid 7;
    property Y2: Double dispid 8;
    property X3: Double dispid 9;
    property Y3: Double dispid 10;
    property Angle1: Double dispid 11;
    property Angle2: Double dispid 12;
    property SegmentType: ksContourSegmentEnum readonly dispid 2001;
    property Curve2D: ICurve2D readonly dispid 2002;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertionFragment
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3D99B82C-CD88-406D-A946-2D8C8E94EE73}
// *********************************************************************//
  IInsertionFragment = interface(IInsertionObject)
    ['{3D99B82C-CD88-406D-A946-2D8C8E94EE73}']
    procedure Set_Scale(PVal: Double); safecall;
    function  Get_Scale: Double; safecall;
    procedure Set_MultiLayer(PVal: WordBool); safecall;
    function  Get_MultiLayer: WordBool; safecall;
    function  Get_Variables: OleVariant; safecall;
    function  Get_Variable(Index: OleVariant): IVariable7; safecall;
    function  Get_VariablesCount: Integer; safecall;
    function  Get_VariableTable: IVariableTable; safecall;
    property Scale: Double read Get_Scale write Set_Scale;
    property MultiLayer: WordBool read Get_MultiLayer write Set_MultiLayer;
    property Variables: OleVariant read Get_Variables;
    property Variable[Index: OleVariant]: IVariable7 read Get_Variable;
    property VariablesCount: Integer read Get_VariablesCount;
    property VariableTable: IVariableTable read Get_VariableTable;
  end;

// *********************************************************************//
// DispIntf:  IInsertionFragmentDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {3D99B82C-CD88-406D-A946-2D8C8E94EE73}
// *********************************************************************//
  IInsertionFragmentDisp = dispinterface
    ['{3D99B82C-CD88-406D-A946-2D8C8E94EE73}']
    property Scale: Double dispid 2001;
    property MultiLayer: WordBool dispid 2002;
    property Variables: OleVariant readonly dispid 2003;
    property Variable[Index: OleVariant]: IVariable7 readonly dispid 2004;
    property VariablesCount: Integer readonly dispid 2005;
    property VariableTable: IVariableTable readonly dispid 2006;
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; dispid 1;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; dispid 2;
    property Name: WideString dispid 3;
    property FileName: WideString readonly dispid 4;
    property InsertionType: ksInsertionTypeEnum readonly dispid 5;
    property DimensionLineScale: WordBool dispid 6;
    property InsertionDefinition: IInsertionDefinition dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertionView
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0C8FC5A9-57A8-4971-8E6C-68933269D42E}
// *********************************************************************//
  IInsertionView = interface(IInsertionObject)
    ['{0C8FC5A9-57A8-4971-8E6C-68933269D42E}']
    procedure Set_ViewNumber(PVal: Integer); safecall;
    function  Get_ViewNumber: Integer; safecall;
    function  Get_ViewName: WideString; safecall;
    procedure Set_ThinLines(PVal: WordBool); safecall;
    function  Get_ThinLines: WordBool; safecall;
    procedure Set_OwnerDocumentParams(PVal: WordBool); safecall;
    function  Get_OwnerDocumentParams: WordBool; safecall;
    property ViewNumber: Integer read Get_ViewNumber write Set_ViewNumber;
    property ViewName: WideString read Get_ViewName;
    property ThinLines: WordBool read Get_ThinLines write Set_ThinLines;
    property OwnerDocumentParams: WordBool read Get_OwnerDocumentParams write Set_OwnerDocumentParams;
  end;

// *********************************************************************//
// DispIntf:  IInsertionViewDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0C8FC5A9-57A8-4971-8E6C-68933269D42E}
// *********************************************************************//
  IInsertionViewDisp = dispinterface
    ['{0C8FC5A9-57A8-4971-8E6C-68933269D42E}']
    property ViewNumber: Integer dispid 2001;
    property ViewName: WideString readonly dispid 2002;
    property ThinLines: WordBool dispid 2003;
    property OwnerDocumentParams: WordBool dispid 2004;
    function  GetPlacement(out X: Double; out Y: Double; out Angle: Double; 
                           out MirrorSymmetry: WordBool): WordBool; dispid 1;
    function  SetPlacement(X: Double; Y: Double; Angle: Double; MirrorSymmetry: WordBool): WordBool; dispid 2;
    property Name: WideString dispid 3;
    property FileName: WideString readonly dispid 4;
    property InsertionType: ksInsertionTypeEnum readonly dispid 5;
    property DimensionLineScale: WordBool dispid 6;
    property InsertionDefinition: IInsertionDefinition dispid 7;
    property DrawingObjectType: DrawingObjectTypeEnum readonly dispid 3000;
    property LayerNumber: Integer dispid 3001;
    property Temp: WordBool readonly dispid 3002;
    property Valid: WordBool readonly dispid 3003;
    function  Update: WordBool; dispid 3004;
    function  Delete: WordBool; dispid 3005;
    property DrawingObjectParamType: ksDrawingObjectParamTypeEnum dispid 3006;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IInsertionsManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B43FA13A-9488-422C-A9F3-D279FDA296BB}
// *********************************************************************//
  IInsertionsManager = interface(IDispatch)
    ['{B43FA13A-9488-422C-A9F3-D279FDA296BB}']
    function  Get_InsertionDefinitions(Type_: ksInsertionTypeEnum): OleVariant; safecall;
    function  Get_InsertionDefinition(Type_: ksInsertionTypeEnum; Index: OleVariant): IInsertionDefinition; safecall;
    function  AddDefinition(Type_: ksInsertionTypeEnum; const Name: WideString; 
                            const FileName: WideString): IInsertionDefinition; safecall;
    function  Get_DefinitionsCount(Type_: ksInsertionTypeEnum): Integer; safecall;
    property InsertionDefinitions[Type_: ksInsertionTypeEnum]: OleVariant read Get_InsertionDefinitions;
    property InsertionDefinition[Type_: ksInsertionTypeEnum; Index: OleVariant]: IInsertionDefinition read Get_InsertionDefinition;
    property DefinitionsCount[Type_: ksInsertionTypeEnum]: Integer read Get_DefinitionsCount;
  end;

// *********************************************************************//
// DispIntf:  IInsertionsManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B43FA13A-9488-422C-A9F3-D279FDA296BB}
// *********************************************************************//
  IInsertionsManagerDisp = dispinterface
    ['{B43FA13A-9488-422C-A9F3-D279FDA296BB}']
    property InsertionDefinitions[Type_: ksInsertionTypeEnum]: OleVariant readonly dispid 501;
    property InsertionDefinition[Type_: ksInsertionTypeEnum; Index: OleVariant]: IInsertionDefinition readonly dispid 502;
    function  AddDefinition(Type_: ksInsertionTypeEnum; const Name: WideString; 
                            const FileName: WideString): IInsertionDefinition; dispid 503;
    property DefinitionsCount[Type_: ksInsertionTypeEnum]: Integer readonly dispid 504;
  end;

// *********************************************************************//
// Interface: IAxisLineParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {620CC8EB-A5C0-4978-BD98-38344DC6ADC0}
// *********************************************************************//
  IAxisLineParam = interface(IDispatch)
    ['{620CC8EB-A5C0-4978-BD98-38344DC6ADC0}']
    procedure Set_JutLength(PVal: Double); safecall;
    function  Get_JutLength: Double; safecall;
    procedure Set_DottedLength(PVal: Double); safecall;
    function  Get_DottedLength: Double; safecall;
    procedure Set_Interval(PVal: Double); safecall;
    function  Get_Interval: Double; safecall;
    procedure Set_AutoDetectedDash(PVal: WordBool); safecall;
    function  Get_AutoDetectedDash: WordBool; safecall;
    procedure Set_DashMaxLength(PVal: Double); safecall;
    function  Get_DashMaxLength: Double; safecall;
    procedure Set_JutLengthModify(PVal: WordBool); safecall;
    function  Get_JutLengthModify: WordBool; safecall;
    procedure Set_DottedLengthModify(PVal: WordBool); safecall;
    function  Get_DottedLengthModify: WordBool; safecall;
    procedure Set_IntervalModify(PVal: WordBool); safecall;
    function  Get_IntervalModify: WordBool; safecall;
    procedure Set_AutoDetectedDashModify(PVal: WordBool); safecall;
    function  Get_AutoDetectedDashModify: WordBool; safecall;
    procedure Set_DashMaxLengthModify(PVal: WordBool); safecall;
    function  Get_DashMaxLengthModify: WordBool; safecall;
    property JutLength: Double read Get_JutLength write Set_JutLength;
    property DottedLength: Double read Get_DottedLength write Set_DottedLength;
    property Interval: Double read Get_Interval write Set_Interval;
    property AutoDetectedDash: WordBool read Get_AutoDetectedDash write Set_AutoDetectedDash;
    property DashMaxLength: Double read Get_DashMaxLength write Set_DashMaxLength;
    property JutLengthModify: WordBool read Get_JutLengthModify write Set_JutLengthModify;
    property DottedLengthModify: WordBool read Get_DottedLengthModify write Set_DottedLengthModify;
    property IntervalModify: WordBool read Get_IntervalModify write Set_IntervalModify;
    property AutoDetectedDashModify: WordBool read Get_AutoDetectedDashModify write Set_AutoDetectedDashModify;
    property DashMaxLengthModify: WordBool read Get_DashMaxLengthModify write Set_DashMaxLengthModify;
  end;

// *********************************************************************//
// DispIntf:  IAxisLineParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {620CC8EB-A5C0-4978-BD98-38344DC6ADC0}
// *********************************************************************//
  IAxisLineParamDisp = dispinterface
    ['{620CC8EB-A5C0-4978-BD98-38344DC6ADC0}']
    property JutLength: Double dispid 1501;
    property DottedLength: Double dispid 1502;
    property Interval: Double dispid 1503;
    property AutoDetectedDash: WordBool dispid 1504;
    property DashMaxLength: Double dispid 1505;
    property JutLengthModify: WordBool dispid 1506;
    property DottedLengthModify: WordBool dispid 1507;
    property IntervalModify: WordBool dispid 1508;
    property AutoDetectedDashModify: WordBool dispid 1509;
    property DashMaxLengthModify: WordBool dispid 1510;
  end;

// *********************************************************************//
// Interface: IBoundariesObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7198C93A-7655-4347-9954-BA9AA28D0608}
// *********************************************************************//
  IBoundariesObject = interface(IDispatch)
    ['{7198C93A-7655-4347-9954-BA9AA28D0608}']
    function  Get_Boundaries: OleVariant; safecall;
    function  AddBoundaries(Objects: OleVariant; DeleteSource: WordBool): WordBool; safecall;
    function  Clear: WordBool; safecall;
    property Boundaries: OleVariant read Get_Boundaries;
  end;

// *********************************************************************//
// DispIntf:  IBoundariesObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {7198C93A-7655-4347-9954-BA9AA28D0608}
// *********************************************************************//
  IBoundariesObjectDisp = dispinterface
    ['{7198C93A-7655-4347-9954-BA9AA28D0608}']
    property Boundaries: OleVariant readonly dispid 2001;
    function  AddBoundaries(Objects: OleVariant; DeleteSource: WordBool): WordBool; dispid 2002;
    function  Clear: WordBool; dispid 2003;
  end;

// *********************************************************************//
// Interface: IAnnotativeObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0DBD7BCD-F78E-4BDA-BCAD-3004C60B6D06}
// *********************************************************************//
  IAnnotativeObject = interface(IDispatch)
    ['{0DBD7BCD-F78E-4BDA-BCAD-3004C60B6D06}']
    function  Get_Sign1: ksAnnotativeTerminatorSignEnum; safecall;
    procedure Set_Sign1(Result: ksAnnotativeTerminatorSignEnum); safecall;
    function  Get_Sign2: ksAnnotativeTerminatorSignEnum; safecall;
    procedure Set_Sign2(Result: ksAnnotativeTerminatorSignEnum); safecall;
    property Sign1: ksAnnotativeTerminatorSignEnum read Get_Sign1 write Set_Sign1;
    property Sign2: ksAnnotativeTerminatorSignEnum read Get_Sign2 write Set_Sign2;
  end;

// *********************************************************************//
// DispIntf:  IAnnotativeObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {0DBD7BCD-F78E-4BDA-BCAD-3004C60B6D06}
// *********************************************************************//
  IAnnotativeObjectDisp = dispinterface
    ['{0DBD7BCD-F78E-4BDA-BCAD-3004C60B6D06}']
    property Sign1: ksAnnotativeTerminatorSignEnum dispid 1501;
    property Sign2: ksAnnotativeTerminatorSignEnum dispid 1502;
  end;

// *********************************************************************//
// Interface: IAnnotativeContainer
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AE6C238C-4398-4057-9D28-D275954D9506}
// *********************************************************************//
  IAnnotativeContainer = interface(IDispatch)
    ['{AE6C238C-4398-4057-9D28-D275954D9506}']
    function  Get_Item(Index: OleVariant): IAnnotativeObject; safecall;
    function  Get_Count: Integer; safecall;
    function  Add(Type_: DrawingObjectTypeEnum): IAnnotativeObject; safecall;
    function  CreateByGeomObject(const Obj: IDrawingObject): IAnnotativeObject; safecall;
    property Item[Index: OleVariant]: IAnnotativeObject read Get_Item; default;
    property Count: Integer read Get_Count;
  end;

// *********************************************************************//
// DispIntf:  IAnnotativeContainerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {AE6C238C-4398-4057-9D28-D275954D9506}
// *********************************************************************//
  IAnnotativeContainerDisp = dispinterface
    ['{AE6C238C-4398-4057-9D28-D275954D9506}']
    property Item[Index: OleVariant]: IAnnotativeObject readonly dispid 0; default;
    property Count: Integer readonly dispid 7001;
    function  Add(Type_: DrawingObjectTypeEnum): IAnnotativeObject; dispid 7002;
    function  CreateByGeomObject(const Obj: IDrawingObject): IAnnotativeObject; dispid 7003;
  end;

// *********************************************************************//
// Interface: ICurveCopyObjectParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {12B52A99-FF5F-4C08-9E5E-DF7C7AD834A8}
// *********************************************************************//
  ICurveCopyObjectParam = interface(ICopyObjectParam)
    ['{12B52A99-FF5F-4C08-9E5E-DF7C7AD834A8}']
    procedure Set_BaseCurve(const Curve: IDrawingObject); safecall;
    function  Get_BaseCurve: IDrawingObject; safecall;
    procedure Set_Step(PVal: Double); safecall;
    function  Get_Step: Double; safecall;
    procedure Set_Count(PVal: Integer); safecall;
    function  Get_Count: Integer; safecall;
    procedure Set_TurnToNormal(PVal: WordBool); safecall;
    function  Get_TurnToNormal: WordBool; safecall;
    procedure Set_PositiveDirection(PVal: WordBool); safecall;
    function  Get_PositiveDirection: WordBool; safecall;
    procedure Set_StepFactor(PVal: WordBool); safecall;
    function  Get_StepFactor: WordBool; safecall;
    property BaseCurve: IDrawingObject read Get_BaseCurve write Set_BaseCurve;
    property Step: Double read Get_Step write Set_Step;
    property Count: Integer read Get_Count write Set_Count;
    property TurnToNormal: WordBool read Get_TurnToNormal write Set_TurnToNormal;
    property PositiveDirection: WordBool read Get_PositiveDirection write Set_PositiveDirection;
    property StepFactor: WordBool read Get_StepFactor write Set_StepFactor;
  end;

// *********************************************************************//
// DispIntf:  ICurveCopyObjectParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {12B52A99-FF5F-4C08-9E5E-DF7C7AD834A8}
// *********************************************************************//
  ICurveCopyObjectParamDisp = dispinterface
    ['{12B52A99-FF5F-4C08-9E5E-DF7C7AD834A8}']
    property BaseCurve: IDrawingObject dispid 2001;
    property Step: Double dispid 2002;
    property Count: Integer dispid 2003;
    property TurnToNormal: WordBool dispid 2004;
    property PositiveDirection: WordBool dispid 2005;
    property StepFactor: WordBool dispid 2006;
    property XOld: Double dispid 1;
    property YOld: Double dispid 2;
    property XNew: Double dispid 3;
    property YNew: Double dispid 4;
    property Scale: Double dispid 5;
    property Angle: Double dispid 6;
    property AttributeCopy: WordBool dispid 7;
    property DimensionLineScale: WordBool dispid 8;
    property SpecificationObjectCopy: WordBool dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICircleCopyObjectParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {138D1202-CA46-4DB3-BF2B-85D260E44355}
// *********************************************************************//
  ICircleCopyObjectParam = interface(ICopyObjectParam)
    ['{138D1202-CA46-4DB3-BF2B-85D260E44355}']
    procedure Set_Xc(Val: Double); safecall;
    function  Get_Xc: Double; safecall;
    procedure Set_Yc(Val: Double); safecall;
    function  Get_Yc: Double; safecall;
    procedure Set_Step(PVal: Double); safecall;
    function  Get_Step: Double; safecall;
    procedure Set_Count(PVal: Integer); safecall;
    function  Get_Count: Integer; safecall;
    procedure Set_ByStep(PVal: WordBool); safecall;
    function  Get_ByStep: WordBool; safecall;
    procedure Set_PositiveDirection(PVal: WordBool); safecall;
    function  Get_PositiveDirection: WordBool; safecall;
    property Xc: Double read Get_Xc write Set_Xc;
    property Yc: Double read Get_Yc write Set_Yc;
    property Step: Double read Get_Step write Set_Step;
    property Count: Integer read Get_Count write Set_Count;
    property ByStep: WordBool read Get_ByStep write Set_ByStep;
    property PositiveDirection: WordBool read Get_PositiveDirection write Set_PositiveDirection;
  end;

// *********************************************************************//
// DispIntf:  ICircleCopyObjectParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {138D1202-CA46-4DB3-BF2B-85D260E44355}
// *********************************************************************//
  ICircleCopyObjectParamDisp = dispinterface
    ['{138D1202-CA46-4DB3-BF2B-85D260E44355}']
    property Xc: Double dispid 2001;
    property Yc: Double dispid 2002;
    property Step: Double dispid 2003;
    property Count: Integer dispid 2004;
    property ByStep: WordBool dispid 2005;
    property PositiveDirection: WordBool dispid 2006;
    property XOld: Double dispid 1;
    property YOld: Double dispid 2;
    property XNew: Double dispid 3;
    property YNew: Double dispid 4;
    property Scale: Double dispid 5;
    property Angle: Double dispid 6;
    property AttributeCopy: WordBool dispid 7;
    property DimensionLineScale: WordBool dispid 8;
    property SpecificationObjectCopy: WordBool dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IExternalTessellationObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D5CDE37-7833-4359-B25A-FE7011EA771A}
// *********************************************************************//
  IExternalTessellationObject = interface(IKompasAPIObject)
    ['{9D5CDE37-7833-4359-B25A-FE7011EA771A}']
    function  Get_ObjectID: Integer; safecall;
    function  SetTessellation(Points: OleVariant; Indexes: OleVariant; Normals: OleVariant; 
                              Colors: OleVariant): WordBool; safecall;
    procedure Set_Visible(const Frame: IDocumentFrame; Param2: WordBool); safecall;
    function  Delete: WordBool; safecall;
    function  SetAdvancedColor(Color: Integer; Ambient: Double; Diffuse: Double; 
                               Specularity: Double; Shininess: Double; Transparency: Double; 
                               Emission: Double): WordBool; safecall;
    function  SetEdges(Points: OleVariant; Edges: OleVariant; Colors: OleVariant): WordBool; safecall;
    function  SetPlaces(Places: OleVariant): WordBool; safecall;
    function  SetEdgeStyles(Styles: OleVariant): WordBool; safecall;
    function  SetEdgeWidths(Widths: OleVariant): WordBool; safecall;
    function  SetTextureImage(Width: Integer; Heigh: Integer; RGBA: WordBool; WrapMode: WordBool; 
                              FiltMode: WordBool; ImageData: OleVariant): WordBool; safecall;
    function  SetTexturePoints(Image2D: WordBool; ImagePoints: OleVariant): WordBool; safecall;
    function  SetFacetMode(SideMode: WordBool; CullingMode: ksFacetCullingMode): WordBool; safecall;
    property ObjectID: Integer read Get_ObjectID;
    property Visible[const Frame: IDocumentFrame]: WordBool write Set_Visible;
  end;

// *********************************************************************//
// DispIntf:  IExternalTessellationObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {9D5CDE37-7833-4359-B25A-FE7011EA771A}
// *********************************************************************//
  IExternalTessellationObjectDisp = dispinterface
    ['{9D5CDE37-7833-4359-B25A-FE7011EA771A}']
    property ObjectID: Integer readonly dispid 1;
    function  SetTessellation(Points: OleVariant; Indexes: OleVariant; Normals: OleVariant; 
                              Colors: OleVariant): WordBool; dispid 2;
    property Visible[const Frame: IDocumentFrame]: WordBool writeonly dispid 3;
    function  Delete: WordBool; dispid 4;
    function  SetAdvancedColor(Color: Integer; Ambient: Double; Diffuse: Double; 
                               Specularity: Double; Shininess: Double; Transparency: Double; 
                               Emission: Double): WordBool; dispid 5;
    function  SetEdges(Points: OleVariant; Edges: OleVariant; Colors: OleVariant): WordBool; dispid 6;
    function  SetPlaces(Places: OleVariant): WordBool; dispid 7;
    function  SetEdgeStyles(Styles: OleVariant): WordBool; dispid 8;
    function  SetEdgeWidths(Widths: OleVariant): WordBool; dispid 9;
    function  SetTextureImage(Width: Integer; Heigh: Integer; RGBA: WordBool; WrapMode: WordBool; 
                              FiltMode: WordBool; ImageData: OleVariant): WordBool; dispid 10;
    function  SetTexturePoints(Image2D: WordBool; ImagePoints: OleVariant): WordBool; dispid 11;
    function  SetFacetMode(SideMode: WordBool; CullingMode: ksFacetCullingMode): WordBool; dispid 12;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IExternalTessellationManager
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DC21F3D3-FFA6-4274-A976-79F34729B866}
// *********************************************************************//
  IExternalTessellationManager = interface(IDispatch)
    ['{DC21F3D3-FFA6-4274-A976-79F34729B866}']
    function  Add: IExternalTessellationObject; safecall;
    function  Get_TessellationObject(Id: Integer): IExternalTessellationObject; safecall;
    procedure Set_ObjectsVisible(Ids: OleVariant; const Frame: IDocumentFrame; Param3: WordBool); safecall;
    function  DeleteObjects(Id: OleVariant): WordBool; safecall;
    function  Clear: WordBool; safecall;
    function  AddGDIObject: IExternalGDIObject; safecall;
    function  Get_GDIObject(Id: Integer): IExternalGDIObject; safecall;
    property TessellationObject[Id: Integer]: IExternalTessellationObject read Get_TessellationObject;
    property ObjectsVisible[Ids: OleVariant; const Frame: IDocumentFrame]: WordBool write Set_ObjectsVisible;
    property GDIObject[Id: Integer]: IExternalGDIObject read Get_GDIObject;
  end;

// *********************************************************************//
// DispIntf:  IExternalTessellationManagerDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {DC21F3D3-FFA6-4274-A976-79F34729B866}
// *********************************************************************//
  IExternalTessellationManagerDisp = dispinterface
    ['{DC21F3D3-FFA6-4274-A976-79F34729B866}']
    function  Add: IExternalTessellationObject; dispid 7501;
    property TessellationObject[Id: Integer]: IExternalTessellationObject readonly dispid 7502;
    property ObjectsVisible[Ids: OleVariant; const Frame: IDocumentFrame]: WordBool writeonly dispid 7503;
    function  DeleteObjects(Id: OleVariant): WordBool; dispid 7504;
    function  Clear: WordBool; dispid 7505;
    function  AddGDIObject: IExternalGDIObject; dispid 7506;
    property GDIObject[Id: Integer]: IExternalGDIObject readonly dispid 7507;
  end;

// *********************************************************************//
// Interface: IExternalGDIObject
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C234E81D-4232-41FD-980D-8E7E6EA7B733}
// *********************************************************************//
  IExternalGDIObject = interface(IKompasAPIObject)
    ['{C234E81D-4232-41FD-980D-8E7E6EA7B733}']
    function  Get_ObjectID: Integer; safecall;
    function  SetTexts(Points: OleVariant; Texts: OleVariant; Colors: OleVariant; 
                       Fonts: OleVariant; Is3DPoints: WordBool): WordBool; safecall;
    procedure Set_Visible(const Frame: IDocumentFrame; Param2: WordBool); safecall;
    function  Delete: WordBool; safecall;
    property ObjectID: Integer read Get_ObjectID;
    property Visible[const Frame: IDocumentFrame]: WordBool write Set_Visible;
  end;

// *********************************************************************//
// DispIntf:  IExternalGDIObjectDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {C234E81D-4232-41FD-980D-8E7E6EA7B733}
// *********************************************************************//
  IExternalGDIObjectDisp = dispinterface
    ['{C234E81D-4232-41FD-980D-8E7E6EA7B733}']
    property ObjectID: Integer readonly dispid 1;
    function  SetTexts(Points: OleVariant; Texts: OleVariant; Colors: OleVariant; 
                       Fonts: OleVariant; Is3DPoints: WordBool): WordBool; dispid 2;
    property Visible[const Frame: IDocumentFrame]: WordBool writeonly dispid 3;
    function  Delete: WordBool; dispid 4;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IModelCurve3D
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EB4AB3A9-8E01-4952-9119-F8D09D9572D5}
// *********************************************************************//
  IModelCurve3D = interface(IDispatch)
    ['{EB4AB3A9-8E01-4952-9119-F8D09D9572D5}']
    function  Get_VertexVisible: WordBool; safecall;
    procedure Set_VertexVisible(Value: WordBool); safecall;
    function  Get_VertexStyle: ksAnnotationSymbolEnum; safecall;
    procedure Set_VertexStyle(Style: ksAnnotationSymbolEnum); safecall;
    function  Get_EdgesStyle: ksCurveStyleEnum; safecall;
    procedure Set_EdgesStyle(Style: ksCurveStyleEnum); safecall;
    property VertexVisible: WordBool read Get_VertexVisible write Set_VertexVisible;
    property VertexStyle: ksAnnotationSymbolEnum read Get_VertexStyle write Set_VertexStyle;
    property EdgesStyle: ksCurveStyleEnum read Get_EdgesStyle write Set_EdgesStyle;
  end;

// *********************************************************************//
// DispIntf:  IModelCurve3DDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {EB4AB3A9-8E01-4952-9119-F8D09D9572D5}
// *********************************************************************//
  IModelCurve3DDisp = dispinterface
    ['{EB4AB3A9-8E01-4952-9119-F8D09D9572D5}']
    property VertexVisible: WordBool dispid 1501;
    property VertexStyle: ksAnnotationSymbolEnum dispid 1502;
    property EdgesStyle: ksCurveStyleEnum dispid 1503;
  end;

// *********************************************************************//
// Interface: IPropertyStyleList
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B2431C46-9A35-494B-A958-D9098F82C3FA}
// *********************************************************************//
  IPropertyStyleList = interface(IPropertyControl)
    ['{B2431C46-9A35-494B-A958-D9098F82C3FA}']
    function  Add(Styles: OleVariant): WordBool; safecall;
    function  Get_Count: Integer; safecall;
    function  ClearList: WordBool; safecall;
    function  Find(Val: Integer): Integer; safecall;
    procedure Set_CurrentIndex(PVal: Integer); safecall;
    function  Get_CurrentIndex: Integer; safecall;
    procedure Set_AnotherStyleBtnEnable(PVal: WordBool); safecall;
    function  Get_AnotherStyleBtnEnable: WordBool; safecall;
    property Count: Integer read Get_Count;
    property CurrentIndex: Integer read Get_CurrentIndex write Set_CurrentIndex;
    property AnotherStyleBtnEnable: WordBool read Get_AnotherStyleBtnEnable write Set_AnotherStyleBtnEnable;
  end;

// *********************************************************************//
// DispIntf:  IPropertyStyleListDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {B2431C46-9A35-494B-A958-D9098F82C3FA}
// *********************************************************************//
  IPropertyStyleListDisp = dispinterface
    ['{B2431C46-9A35-494B-A958-D9098F82C3FA}']
    function  Add(Styles: OleVariant): WordBool; dispid 101;
    property Count: Integer readonly dispid 102;
    function  ClearList: WordBool; dispid 103;
    function  Find(Val: Integer): Integer; dispid 104;
    property CurrentIndex: Integer dispid 105;
    property AnotherStyleBtnEnable: WordBool dispid 106;
    property Visible: WordBool dispid 1;
    property Name: WideString dispid 2;
    property ControlType: ControlTypeEnum readonly dispid 3;
    property Id: Integer dispid 4;
    property Enable: WordBool dispid 5;
    property Value: OleVariant dispid 6;
    property NameVisibility: PropertyControlNameVisibility dispid 7;
    property Hint: WideString dispid 8;
    property Tips: WideString dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: ICircularCopyObjectParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A5B8E337-EE84-4EEC-8235-A812FDD6C2DE}
// *********************************************************************//
  ICircularCopyObjectParam = interface(ICopyObjectParam)
    ['{A5B8E337-EE84-4EEC-8235-A812FDD6C2DE}']
    procedure Set_Radius(Val: Double); safecall;
    function  Get_Radius: Double; safecall;
    procedure Set_Step1(PVal: Double); safecall;
    function  Get_Step1: Double; safecall;
    procedure Set_StepFactor1(PVal: WordBool); safecall;
    function  Get_StepFactor1: WordBool; safecall;
    procedure Set_Count1(Val: Integer); safecall;
    function  Get_Count1: Integer; safecall;
    procedure Set_Angle2(PVal: Double); safecall;
    function  Get_Angle2: Double; safecall;
    procedure Set_Step2(PVal: Double); safecall;
    function  Get_Step2: Double; safecall;
    procedure Set_StepFactor2(PVal: WordBool); safecall;
    function  Get_StepFactor2: WordBool; safecall;
    procedure Set_Count2(PVal: Integer); safecall;
    function  Get_Count2: Integer; safecall;
    procedure Set_SaveCentreCopy(PVal: WordBool); safecall;
    function  Get_SaveCentreCopy: WordBool; safecall;
    procedure Set_TurnObject(PVal: WordBool); safecall;
    function  Get_TurnObject: WordBool; safecall;
    property Radius: Double read Get_Radius write Set_Radius;
    property Step1: Double read Get_Step1 write Set_Step1;
    property StepFactor1: WordBool read Get_StepFactor1 write Set_StepFactor1;
    property Count1: Integer read Get_Count1 write Set_Count1;
    property Angle2: Double read Get_Angle2 write Set_Angle2;
    property Step2: Double read Get_Step2 write Set_Step2;
    property StepFactor2: WordBool read Get_StepFactor2 write Set_StepFactor2;
    property Count2: Integer read Get_Count2 write Set_Count2;
    property SaveCentreCopy: WordBool read Get_SaveCentreCopy write Set_SaveCentreCopy;
    property TurnObject: WordBool read Get_TurnObject write Set_TurnObject;
  end;

// *********************************************************************//
// DispIntf:  ICircularCopyObjectParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {A5B8E337-EE84-4EEC-8235-A812FDD6C2DE}
// *********************************************************************//
  ICircularCopyObjectParamDisp = dispinterface
    ['{A5B8E337-EE84-4EEC-8235-A812FDD6C2DE}']
    property Radius: Double dispid 2001;
    property Step1: Double dispid 2002;
    property StepFactor1: WordBool dispid 2003;
    property Count1: Integer dispid 2004;
    property Angle2: Double dispid 2005;
    property Step2: Double dispid 2006;
    property StepFactor2: WordBool dispid 2007;
    property Count2: Integer dispid 2008;
    property SaveCentreCopy: WordBool dispid 2009;
    property TurnObject: WordBool dispid 2010;
    property XOld: Double dispid 1;
    property YOld: Double dispid 2;
    property XNew: Double dispid 3;
    property YNew: Double dispid 4;
    property Scale: Double dispid 5;
    property Angle: Double dispid 6;
    property AttributeCopy: WordBool dispid 7;
    property DimensionLineScale: WordBool dispid 8;
    property SpecificationObjectCopy: WordBool dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// Interface: IMeshCopyObjectParam
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {592AB214-A8CF-462E-ACD5-528839113338}
// *********************************************************************//
  IMeshCopyObjectParam = interface(ICopyObjectParam)
    ['{592AB214-A8CF-462E-ACD5-528839113338}']
    procedure Set_Angle1(Val: Double); safecall;
    function  Get_Angle1: Double; safecall;
    procedure Set_Step1(PVal: Double); safecall;
    function  Get_Step1: Double; safecall;
    procedure Set_StepFactor1(PVal: WordBool); safecall;
    function  Get_StepFactor1: WordBool; safecall;
    procedure Set_Count1(Val: Integer); safecall;
    function  Get_Count1: Integer; safecall;
    procedure Set_Angle2(PVal: Double); safecall;
    function  Get_Angle2: Double; safecall;
    procedure Set_Step2(PVal: Double); safecall;
    function  Get_Step2: Double; safecall;
    procedure Set_StepFactor2(PVal: WordBool); safecall;
    function  Get_StepFactor2: WordBool; safecall;
    procedure Set_Count2(PVal: Integer); safecall;
    function  Get_Count2: Integer; safecall;
    procedure Set_SaveCornersCopy(PVal: WordBool); safecall;
    function  Get_SaveCornersCopy: WordBool; safecall;
    procedure Set_SaveCentreCopy(PVal: WordBool); safecall;
    function  Get_SaveCentreCopy: WordBool; safecall;
    property Angle1: Double read Get_Angle1 write Set_Angle1;
    property Step1: Double read Get_Step1 write Set_Step1;
    property StepFactor1: WordBool read Get_StepFactor1 write Set_StepFactor1;
    property Count1: Integer read Get_Count1 write Set_Count1;
    property Angle2: Double read Get_Angle2 write Set_Angle2;
    property Step2: Double read Get_Step2 write Set_Step2;
    property StepFactor2: WordBool read Get_StepFactor2 write Set_StepFactor2;
    property Count2: Integer read Get_Count2 write Set_Count2;
    property SaveCornersCopy: WordBool read Get_SaveCornersCopy write Set_SaveCornersCopy;
    property SaveCentreCopy: WordBool read Get_SaveCentreCopy write Set_SaveCentreCopy;
  end;

// *********************************************************************//
// DispIntf:  IMeshCopyObjectParamDisp
// Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:      {592AB214-A8CF-462E-ACD5-528839113338}
// *********************************************************************//
  IMeshCopyObjectParamDisp = dispinterface
    ['{592AB214-A8CF-462E-ACD5-528839113338}']
    property Angle1: Double dispid 2001;
    property Step1: Double dispid 2002;
    property StepFactor1: WordBool dispid 2003;
    property Count1: Integer dispid 2004;
    property Angle2: Double dispid 2005;
    property Step2: Double dispid 2006;
    property StepFactor2: WordBool dispid 2007;
    property Count2: Integer dispid 2008;
    property SaveCornersCopy: WordBool dispid 2009;
    property SaveCentreCopy: WordBool dispid 2010;
    property XOld: Double dispid 1;
    property YOld: Double dispid 2;
    property XNew: Double dispid 3;
    property YNew: Double dispid 4;
    property Scale: Double dispid 5;
    property Angle: Double dispid 6;
    property AttributeCopy: WordBool dispid 7;
    property DimensionLineScale: WordBool dispid 8;
    property SpecificationObjectCopy: WordBool dispid 9;
    property Parent: IKompasAPIObject readonly dispid 1000;
    property Application: IApplication readonly dispid 1001;
    property Type_: KompasAPIObjectTypeEnum readonly dispid 1002;
    property Reference: Integer readonly dispid 1003;
  end;

// *********************************************************************//
// The Class CoKompasDocument provides a Create and CreateRemote method to          
// create instances of the default interface IKompasDocument exposed by              
// the CoClass KompasDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoKompasDocument = class
    class function Create: IKompasDocument;
    class function CreateRemote(const MachineName: string): IKompasDocument;
  end;

// *********************************************************************//
// The Class Co_Application provides a Create and CreateRemote method to          
// create instances of the default interface IApplication exposed by              
// the CoClass _Application. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Application = class
    class function Create: IApplication;
    class function CreateRemote(const MachineName: string): IApplication;
  end;

// *********************************************************************//
// The Class CoDocuments provides a Create and CreateRemote method to          
// create instances of the default interface IDocuments exposed by              
// the CoClass Documents. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDocuments = class
    class function Create: IDocuments;
    class function CreateRemote(const MachineName: string): IDocuments;
  end;

// *********************************************************************//
// The Class CoDocumentFrame provides a Create and CreateRemote method to          
// create instances of the default interface IDocumentFrame exposed by              
// the CoClass DocumentFrame. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDocumentFrame = class
    class function Create: IDocumentFrame;
    class function CreateRemote(const MachineName: string): IDocumentFrame;
  end;

// *********************************************************************//
// The Class CoDocumentFrames provides a Create and CreateRemote method to          
// create instances of the default interface IDocumentFrames exposed by              
// the CoClass DocumentFrames. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDocumentFrames = class
    class function Create: IDocumentFrames;
    class function CreateRemote(const MachineName: string): IDocumentFrames;
  end;

// *********************************************************************//
// The Class CoProcessParam provides a Create and CreateRemote method to          
// create instances of the default interface IProcessParam exposed by              
// the CoClass ProcessParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoProcessParam = class
    class function Create: IProcessParam;
    class function CreateRemote(const MachineName: string): IProcessParam;
  end;

// *********************************************************************//
// The Class CoPropertyControls provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyControls exposed by              
// the CoClass PropertyControls. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyControls = class
    class function Create: IPropertyControls;
    class function CreateRemote(const MachineName: string): IPropertyControls;
  end;

// *********************************************************************//
// The Class CoPropertyTab provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyTab exposed by              
// the CoClass PropertyTab. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyTab = class
    class function Create: IPropertyTab;
    class function CreateRemote(const MachineName: string): IPropertyTab;
  end;

// *********************************************************************//
// The Class CoPropertyTabs provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyTabs exposed by              
// the CoClass PropertyTabs. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyTabs = class
    class function Create: IPropertyTabs;
    class function CreateRemote(const MachineName: string): IPropertyTabs;
  end;

// *********************************************************************//
// The Class CoPropertyEdit provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyEdit exposed by              
// the CoClass PropertyEdit. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyEdit = class
    class function Create: IPropertyEdit;
    class function CreateRemote(const MachineName: string): IPropertyEdit;
  end;

// *********************************************************************//
// The Class CoPropertySeparator provides a Create and CreateRemote method to          
// create instances of the default interface IPropertySeparator exposed by              
// the CoClass PropertySeparator. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertySeparator = class
    class function Create: IPropertySeparator;
    class function CreateRemote(const MachineName: string): IPropertySeparator;
  end;

// *********************************************************************//
// The Class CoPropertyList provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyList exposed by              
// the CoClass PropertyList. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyList = class
    class function Create: IPropertyList;
    class function CreateRemote(const MachineName: string): IPropertyList;
  end;

// *********************************************************************//
// The Class CoPropertyCheckBox provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyCheckBox exposed by              
// the CoClass PropertyCheckBox. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyCheckBox = class
    class function Create: IPropertyCheckBox;
    class function CreateRemote(const MachineName: string): IPropertyCheckBox;
  end;

// *********************************************************************//
// The Class CoPropertyMultiButton provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyMultiButton exposed by              
// the CoClass PropertyMultiButton. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyMultiButton = class
    class function Create: IPropertyMultiButton;
    class function CreateRemote(const MachineName: string): IPropertyMultiButton;
  end;

// *********************************************************************//
// The Class CoPropertySlideBox provides a Create and CreateRemote method to          
// create instances of the default interface IPropertySlideBox exposed by              
// the CoClass PropertySlideBox. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertySlideBox = class
    class function Create: IPropertySlideBox;
    class function CreateRemote(const MachineName: string): IPropertySlideBox;
  end;

// *********************************************************************//
// The Class CoPropertyUserControl provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyUserControl exposed by              
// the CoClass PropertyUserControl. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyUserControl = class
    class function Create: IPropertyUserControl;
    class function CreateRemote(const MachineName: string): IPropertyUserControl;
  end;

// *********************************************************************//
// The Class CoPropertyGrid provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyGrid exposed by              
// the CoClass PropertyGrid. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyGrid = class
    class function Create: IPropertyGrid;
    class function CreateRemote(const MachineName: string): IPropertyGrid;
  end;

// *********************************************************************//
// The Class CoPropertyManager provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyManager exposed by              
// the CoClass PropertyManager. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyManager = class
    class function Create: IPropertyManager;
    class function CreateRemote(const MachineName: string): IPropertyManager;
  end;

// *********************************************************************//
// The Class CoKompasDocument3D provides a Create and CreateRemote method to          
// create instances of the default interface IKompasDocument3D exposed by              
// the CoClass KompasDocument3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoKompasDocument3D = class
    class function Create: IKompasDocument3D;
    class function CreateRemote(const MachineName: string): IKompasDocument3D;
  end;

// *********************************************************************//
// The Class CoDrawingDocument provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingDocument exposed by              
// the CoClass DrawingDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingDocument = class
    class function Create: IDrawingDocument;
    class function CreateRemote(const MachineName: string): IDrawingDocument;
  end;

// *********************************************************************//
// The Class CoFragmentDocument provides a Create and CreateRemote method to          
// create instances of the default interface IFragmentDocument exposed by              
// the CoClass FragmentDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoFragmentDocument = class
    class function Create: IFragmentDocument;
    class function CreateRemote(const MachineName: string): IFragmentDocument;
  end;

// *********************************************************************//
// The Class CoSpecificationDocument provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationDocument exposed by              
// the CoClass SpecificationDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationDocument = class
    class function Create: ISpecificationDocument;
    class function CreateRemote(const MachineName: string): ISpecificationDocument;
  end;

// *********************************************************************//
// The Class CoTextDocument provides a Create and CreateRemote method to          
// create instances of the default interface ITextDocument exposed by              
// the CoClass TextDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTextDocument = class
    class function Create: ITextDocument;
    class function CreateRemote(const MachineName: string): ITextDocument;
  end;

// *********************************************************************//
// The Class CoPartDocument provides a Create and CreateRemote method to          
// create instances of the default interface IPartDocument exposed by              
// the CoClass PartDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPartDocument = class
    class function Create: IPartDocument;
    class function CreateRemote(const MachineName: string): IPartDocument;
  end;

// *********************************************************************//
// The Class CoAssemblyDocument provides a Create and CreateRemote method to          
// create instances of the default interface IAssemblyDocument exposed by              
// the CoClass AssemblyDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAssemblyDocument = class
    class function Create: IAssemblyDocument;
    class function CreateRemote(const MachineName: string): IAssemblyDocument;
  end;

// *********************************************************************//
// The Class CoPropertyTextButton provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyTextButton exposed by              
// the CoClass PropertyTextButton. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyTextButton = class
    class function Create: IPropertyTextButton;
    class function CreateRemote(const MachineName: string): IPropertyTextButton;
  end;

// *********************************************************************//
// The Class CoPropertySpinEdit provides a Create and CreateRemote method to          
// create instances of the default interface IPropertySpinEdit exposed by              
// the CoClass PropertySpinEdit. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertySpinEdit = class
    class function Create: IPropertySpinEdit;
    class function CreateRemote(const MachineName: string): IPropertySpinEdit;
  end;

// *********************************************************************//
// The Class CoViewsAndLayersManager provides a Create and CreateRemote method to          
// create instances of the default interface IViewsAndLayersManager exposed by              
// the CoClass ViewsAndLayersManager. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoViewsAndLayersManager = class
    class function Create: IViewsAndLayersManager;
    class function CreateRemote(const MachineName: string): IViewsAndLayersManager;
  end;

// *********************************************************************//
// The Class CoDrawingObject provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingObject exposed by              
// the CoClass DrawingObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingObject = class
    class function Create: IDrawingObject;
    class function CreateRemote(const MachineName: string): IDrawingObject;
  end;

// *********************************************************************//
// The Class CoDrawingObjects provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingObjects exposed by              
// the CoClass DrawingObjects. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingObjects = class
    class function Create: IDrawingObjects;
    class function CreateRemote(const MachineName: string): IDrawingObjects;
  end;

// *********************************************************************//
// The Class CoViews provides a Create and CreateRemote method to          
// create instances of the default interface IViews exposed by              
// the CoClass Views. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoViews = class
    class function Create: IViews;
    class function CreateRemote(const MachineName: string): IViews;
  end;

// *********************************************************************//
// The Class CoView provides a Create and CreateRemote method to          
// create instances of the default interface IView exposed by              
// the CoClass View. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoView = class
    class function Create: IView;
    class function CreateRemote(const MachineName: string): IView;
  end;

// *********************************************************************//
// The Class CoAssociationView provides a Create and CreateRemote method to          
// create instances of the default interface IAssociationView exposed by              
// the CoClass AssociationView. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAssociationView = class
    class function Create: IAssociationView;
    class function CreateRemote(const MachineName: string): IAssociationView;
  end;

// *********************************************************************//
// The Class CoLayerGroups provides a Create and CreateRemote method to          
// create instances of the default interface ILayerGroups exposed by              
// the CoClass LayerGroups. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayerGroups = class
    class function Create: ILayerGroups;
    class function CreateRemote(const MachineName: string): ILayerGroups;
  end;

// *********************************************************************//
// The Class CoLayerGroup provides a Create and CreateRemote method to          
// create instances of the default interface ILayerGroup exposed by              
// the CoClass LayerGroup. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayerGroup = class
    class function Create: ILayerGroup;
    class function CreateRemote(const MachineName: string): ILayerGroup;
  end;

// *********************************************************************//
// The Class CoLayers provides a Create and CreateRemote method to          
// create instances of the default interface ILayers exposed by              
// the CoClass Layers. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayers = class
    class function Create: ILayers;
    class function CreateRemote(const MachineName: string): ILayers;
  end;

// *********************************************************************//
// The Class CoLayer provides a Create and CreateRemote method to          
// create instances of the default interface ILayer exposed by              
// the CoClass Layer. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayer = class
    class function Create: ILayer;
    class function CreateRemote(const MachineName: string): ILayer;
  end;

// *********************************************************************//
// The Class CoLayerFilterCondition provides a Create and CreateRemote method to          
// create instances of the default interface ILayerFilterCondition exposed by              
// the CoClass LayerFilterCondition. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayerFilterCondition = class
    class function Create: ILayerFilterCondition;
    class function CreateRemote(const MachineName: string): ILayerFilterCondition;
  end;

// *********************************************************************//
// The Class CoLayerFilterConditions provides a Create and CreateRemote method to          
// create instances of the default interface ILayerFilterConditions exposed by              
// the CoClass LayerFilterConditions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayerFilterConditions = class
    class function Create: ILayerFilterConditions;
    class function CreateRemote(const MachineName: string): ILayerFilterConditions;
  end;

// *********************************************************************//
// The Class CoDocumentSettings provides a Create and CreateRemote method to          
// create instances of the default interface IDocumentSettings exposed by              
// the CoClass DocumentSettings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDocumentSettings = class
    class function Create: IDocumentSettings;
    class function CreateRemote(const MachineName: string): IDocumentSettings;
  end;

// *********************************************************************//
// The Class CoDocument2DSettings provides a Create and CreateRemote method to          
// create instances of the default interface IDocument2DSettings exposed by              
// the CoClass Document2DSettings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDocument2DSettings = class
    class function Create: IDocument2DSettings;
    class function CreateRemote(const MachineName: string): IDocument2DSettings;
  end;

// *********************************************************************//
// The Class CoLibraryManager provides a Create and CreateRemote method to          
// create instances of the default interface ILibraryManager exposed by              
// the CoClass LibraryManager. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLibraryManager = class
    class function Create: ILibraryManager;
    class function CreateRemote(const MachineName: string): ILibraryManager;
  end;

// *********************************************************************//
// The Class CoProceduresLibrary provides a Create and CreateRemote method to          
// create instances of the default interface IProceduresLibrary exposed by              
// the CoClass ProceduresLibrary. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoProceduresLibrary = class
    class function Create: IProceduresLibrary;
    class function CreateRemote(const MachineName: string): IProceduresLibrary;
  end;

// *********************************************************************//
// The Class CoProcedures provides a Create and CreateRemote method to          
// create instances of the default interface IProcedures exposed by              
// the CoClass Procedures. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoProcedures = class
    class function Create: IProcedures;
    class function CreateRemote(const MachineName: string): IProcedures;
  end;

// *********************************************************************//
// The Class CoProcedure_ provides a Create and CreateRemote method to          
// create instances of the default interface IProcedure exposed by              
// the CoClass Procedure_. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoProcedure_ = class
    class function Create: IProcedure;
    class function CreateRemote(const MachineName: string): IProcedure;
  end;

// *********************************************************************//
// The Class CoInsertsLibrary provides a Create and CreateRemote method to          
// create instances of the default interface IInsertsLibrary exposed by              
// the CoClass InsertsLibrary. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInsertsLibrary = class
    class function Create: IInsertsLibrary;
    class function CreateRemote(const MachineName: string): IInsertsLibrary;
  end;

// *********************************************************************//
// The Class CoInserts provides a Create and CreateRemote method to          
// create instances of the default interface IInserts exposed by              
// the CoClass Inserts. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInserts = class
    class function Create: IInserts;
    class function CreateRemote(const MachineName: string): IInserts;
  end;

// *********************************************************************//
// The Class CoInsert provides a Create and CreateRemote method to          
// create instances of the default interface IInsert exposed by              
// the CoClass Insert. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInsert = class
    class function Create: IInsert;
    class function CreateRemote(const MachineName: string): IInsert;
  end;

// *********************************************************************//
// The Class CoInsertsLibraries provides a Create and CreateRemote method to          
// create instances of the default interface IInsertsLibraries exposed by              
// the CoClass InsertsLibraries. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInsertsLibraries = class
    class function Create: IInsertsLibraries;
    class function CreateRemote(const MachineName: string): IInsertsLibraries;
  end;

// *********************************************************************//
// The Class CoProceduresLibraries provides a Create and CreateRemote method to          
// create instances of the default interface IProceduresLibraries exposed by              
// the CoClass ProceduresLibraries. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoProceduresLibraries = class
    class function Create: IProceduresLibraries;
    class function CreateRemote(const MachineName: string): IProceduresLibraries;
  end;

// *********************************************************************//
// The Class CoSpecificationDescriptions provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationDescriptions exposed by              
// the CoClass SpecificationDescriptions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationDescriptions = class
    class function Create: ISpecificationDescriptions;
    class function CreateRemote(const MachineName: string): ISpecificationDescriptions;
  end;

// *********************************************************************//
// The Class CoSpecificationDescription provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationDescription exposed by              
// the CoClass SpecificationDescription. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationDescription = class
    class function Create: ISpecificationDescription;
    class function CreateRemote(const MachineName: string): ISpecificationDescription;
  end;

// *********************************************************************//
// The Class CoSpecificationStyle provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationStyle exposed by              
// the CoClass SpecificationStyle. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationStyle = class
    class function Create: ISpecificationStyle;
    class function CreateRemote(const MachineName: string): ISpecificationStyle;
  end;

// *********************************************************************//
// The Class CoSpecificationColumnStyles provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationColumnStyles exposed by              
// the CoClass SpecificationColumnStyles. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationColumnStyles = class
    class function Create: ISpecificationColumnStyles;
    class function CreateRemote(const MachineName: string): ISpecificationColumnStyles;
  end;

// *********************************************************************//
// The Class CoSpecificationColumnStyle provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationColumnStyle exposed by              
// the CoClass SpecificationColumnStyle. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationColumnStyle = class
    class function Create: ISpecificationColumnStyle;
    class function CreateRemote(const MachineName: string): ISpecificationColumnStyle;
  end;

// *********************************************************************//
// The Class CoSpecificationSectionStyles provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationSectionStyles exposed by              
// the CoClass SpecificationSectionStyles. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationSectionStyles = class
    class function Create: ISpecificationSectionStyles;
    class function CreateRemote(const MachineName: string): ISpecificationSectionStyles;
  end;

// *********************************************************************//
// The Class CoSpecificationSectionStyle provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationSectionStyle exposed by              
// the CoClass SpecificationSectionStyle. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationSectionStyle = class
    class function Create: ISpecificationSectionStyle;
    class function CreateRemote(const MachineName: string): ISpecificationSectionStyle;
  end;

// *********************************************************************//
// The Class CoAdditionalBlockStyles provides a Create and CreateRemote method to          
// create instances of the default interface IAdditionalBlockStyles exposed by              
// the CoClass AdditionalBlockStyles. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAdditionalBlockStyles = class
    class function Create: IAdditionalBlockStyles;
    class function CreateRemote(const MachineName: string): IAdditionalBlockStyles;
  end;

// *********************************************************************//
// The Class CoAdditionalBlockStyle provides a Create and CreateRemote method to          
// create instances of the default interface IAdditionalBlockStyle exposed by              
// the CoClass AdditionalBlockStyle. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAdditionalBlockStyle = class
    class function Create: IAdditionalBlockStyle;
    class function CreateRemote(const MachineName: string): IAdditionalBlockStyle;
  end;

// *********************************************************************//
// The Class CoSheetFormat provides a Create and CreateRemote method to          
// create instances of the default interface ISheetFormat exposed by              
// the CoClass SheetFormat. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetFormat = class
    class function Create: ISheetFormat;
    class function CreateRemote(const MachineName: string): ISheetFormat;
  end;

// *********************************************************************//
// The Class CoSpecificationTuning provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationTuning exposed by              
// the CoClass SpecificationTuning. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationTuning = class
    class function Create: ISpecificationTuning;
    class function CreateRemote(const MachineName: string): ISpecificationTuning;
  end;

// *********************************************************************//
// The Class CoSpecificationTuningSections provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationTuningSections exposed by              
// the CoClass SpecificationTuningSections. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationTuningSections = class
    class function Create: ISpecificationTuningSections;
    class function CreateRemote(const MachineName: string): ISpecificationTuningSections;
  end;

// *********************************************************************//
// The Class CoSpecificationTuningSection provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationTuningSection exposed by              
// the CoClass SpecificationTuningSection. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationTuningSection = class
    class function Create: ISpecificationTuningSection;
    class function CreateRemote(const MachineName: string): ISpecificationTuningSection;
  end;

// *********************************************************************//
// The Class CoSpecificationSubsections provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationSubsections exposed by              
// the CoClass SpecificationSubsections. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationSubsections = class
    class function Create: ISpecificationSubsections;
    class function CreateRemote(const MachineName: string): ISpecificationSubsections;
  end;

// *********************************************************************//
// The Class CoSpecificationSubsection provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationSubsection exposed by              
// the CoClass SpecificationSubsection. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationSubsection = class
    class function Create: ISpecificationSubsection;
    class function CreateRemote(const MachineName: string): ISpecificationSubsection;
  end;

// *********************************************************************//
// The Class CoAdditionalBlockTunings provides a Create and CreateRemote method to          
// create instances of the default interface IAdditionalBlockTunings exposed by              
// the CoClass AdditionalBlockTunings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAdditionalBlockTunings = class
    class function Create: IAdditionalBlockTunings;
    class function CreateRemote(const MachineName: string): IAdditionalBlockTunings;
  end;

// *********************************************************************//
// The Class CoAdditionalBlockTuning provides a Create and CreateRemote method to          
// create instances of the default interface IAdditionalBlockTuning exposed by              
// the CoClass AdditionalBlockTuning. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAdditionalBlockTuning = class
    class function Create: IAdditionalBlockTuning;
    class function CreateRemote(const MachineName: string): IAdditionalBlockTuning;
  end;

// *********************************************************************//
// The Class CoAdditionalBlockSectionTunings provides a Create and CreateRemote method to          
// create instances of the default interface IAdditionalBlockSectionTunings exposed by              
// the CoClass AdditionalBlockSectionTunings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAdditionalBlockSectionTunings = class
    class function Create: IAdditionalBlockSectionTunings;
    class function CreateRemote(const MachineName: string): IAdditionalBlockSectionTunings;
  end;

// *********************************************************************//
// The Class CoAdditionalBlockSectionTuning provides a Create and CreateRemote method to          
// create instances of the default interface IAdditionalBlockSectionTuning exposed by              
// the CoClass AdditionalBlockSectionTuning. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAdditionalBlockSectionTuning = class
    class function Create: IAdditionalBlockSectionTuning;
    class function CreateRemote(const MachineName: string): IAdditionalBlockSectionTuning;
  end;

// *********************************************************************//
// The Class CoTextFont provides a Create and CreateRemote method to          
// create instances of the default interface ITextFont exposed by              
// the CoClass TextFont. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTextFont = class
    class function Create: ITextFont;
    class function CreateRemote(const MachineName: string): ITextFont;
  end;

// *********************************************************************//
// The Class CoTextStyle provides a Create and CreateRemote method to          
// create instances of the default interface ITextStyle exposed by              
// the CoClass TextStyle. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTextStyle = class
    class function Create: ITextStyle;
    class function CreateRemote(const MachineName: string): ITextStyle;
  end;

// *********************************************************************//
// The Class CoTabulators provides a Create and CreateRemote method to          
// create instances of the default interface ITabulators exposed by              
// the CoClass Tabulators. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTabulators = class
    class function Create: ITabulators;
    class function CreateRemote(const MachineName: string): ITabulators;
  end;

// *********************************************************************//
// The Class CoTabulator provides a Create and CreateRemote method to          
// create instances of the default interface ITabulator exposed by              
// the CoClass Tabulator. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTabulator = class
    class function Create: ITabulator;
    class function CreateRemote(const MachineName: string): ITabulator;
  end;

// *********************************************************************//
// The Class CoKompasError provides a Create and CreateRemote method to          
// create instances of the default interface IKompasError exposed by              
// the CoClass KompasError. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoKompasError = class
    class function Create: IKompasError;
    class function CreateRemote(const MachineName: string): IKompasError;
  end;

// *********************************************************************//
// The Class CoSpecificationBaseObjects provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationBaseObjects exposed by              
// the CoClass SpecificationBaseObjects. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationBaseObjects = class
    class function Create: ISpecificationBaseObjects;
    class function CreateRemote(const MachineName: string): ISpecificationBaseObjects;
  end;

// *********************************************************************//
// The Class CoSpecificationCommentObjects provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationCommentObjects exposed by              
// the CoClass SpecificationCommentObjects. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationCommentObjects = class
    class function Create: ISpecificationCommentObjects;
    class function CreateRemote(const MachineName: string): ISpecificationCommentObjects;
  end;

// *********************************************************************//
// The Class CoSpecificationObject provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationObject exposed by              
// the CoClass SpecificationObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationObject = class
    class function Create: ISpecificationObject;
    class function CreateRemote(const MachineName: string): ISpecificationObject;
  end;

// *********************************************************************//
// The Class CoSpecificationBaseObject provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationBaseObject exposed by              
// the CoClass SpecificationBaseObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationBaseObject = class
    class function Create: ISpecificationBaseObject;
    class function CreateRemote(const MachineName: string): ISpecificationBaseObject;
  end;

// *********************************************************************//
// The Class CoSpecificationCommentObject provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationCommentObject exposed by              
// the CoClass SpecificationCommentObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationCommentObject = class
    class function Create: ISpecificationCommentObject;
    class function CreateRemote(const MachineName: string): ISpecificationCommentObject;
  end;

// *********************************************************************//
// The Class CoSpecificationColumns provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationColumns exposed by              
// the CoClass SpecificationColumns. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationColumns = class
    class function Create: ISpecificationColumns;
    class function CreateRemote(const MachineName: string): ISpecificationColumns;
  end;

// *********************************************************************//
// The Class CoSpecificationColumn provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationColumn exposed by              
// the CoClass SpecificationColumn. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationColumn = class
    class function Create: ISpecificationColumn;
    class function CreateRemote(const MachineName: string): ISpecificationColumn;
  end;

// *********************************************************************//
// The Class CoSpecificationColumnItems provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationColumnItems exposed by              
// the CoClass SpecificationColumnItems. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationColumnItems = class
    class function Create: ISpecificationColumnItems;
    class function CreateRemote(const MachineName: string): ISpecificationColumnItems;
  end;

// *********************************************************************//
// The Class CoSpecificationColumnItem provides a Create and CreateRemote method to          
// create instances of the default interface ISpecificationColumnItem exposed by              
// the CoClass SpecificationColumnItem. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpecificationColumnItem = class
    class function Create: ISpecificationColumnItem;
    class function CreateRemote(const MachineName: string): ISpecificationColumnItem;
  end;

// *********************************************************************//
// The Class CoAttachedDocuments provides a Create and CreateRemote method to          
// create instances of the default interface IAttachedDocuments exposed by              
// the CoClass AttachedDocuments. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAttachedDocuments = class
    class function Create: IAttachedDocuments;
    class function CreateRemote(const MachineName: string): IAttachedDocuments;
  end;

// *********************************************************************//
// The Class CoAttachedDocument provides a Create and CreateRemote method to          
// create instances of the default interface IAttachedDocument exposed by              
// the CoClass AttachedDocument. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAttachedDocument = class
    class function Create: IAttachedDocument;
    class function CreateRemote(const MachineName: string): IAttachedDocument;
  end;

// *********************************************************************//
// The Class CoPropertyFileName provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyFileName exposed by              
// the CoClass PropertyFileName. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyFileName = class
    class function Create: IPropertyFileName;
    class function CreateRemote(const MachineName: string): IPropertyFileName;
  end;

// *********************************************************************//
// The Class CoPropertyColor provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyColor exposed by              
// the CoClass PropertyColor. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyColor = class
    class function Create: IPropertyColor;
    class function CreateRemote(const MachineName: string): IPropertyColor;
  end;

// *********************************************************************//
// The Class CoLayoutSheets provides a Create and CreateRemote method to          
// create instances of the default interface ILayoutSheets exposed by              
// the CoClass LayoutSheets. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayoutSheets = class
    class function Create: ILayoutSheets;
    class function CreateRemote(const MachineName: string): ILayoutSheets;
  end;

// *********************************************************************//
// The Class CoLayoutSheet provides a Create and CreateRemote method to          
// create instances of the default interface ILayoutSheet exposed by              
// the CoClass LayoutSheet. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLayoutSheet = class
    class function Create: ILayoutSheet;
    class function CreateRemote(const MachineName: string): ILayoutSheet;
  end;

// *********************************************************************//
// The Class CoConverter provides a Create and CreateRemote method to          
// create instances of the default interface IConverter exposed by              
// the CoClass Converter. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoConverter = class
    class function Create: IConverter;
    class function CreateRemote(const MachineName: string): IConverter;
  end;

// *********************************************************************//
// The Class CoCheckSum provides a Create and CreateRemote method to          
// create instances of the default interface ICheckSum exposed by              
// the CoClass CheckSum. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCheckSum = class
    class function Create: ICheckSum;
    class function CreateRemote(const MachineName: string): ICheckSum;
  end;

// *********************************************************************//
// The Class CoModelObject provides a Create and CreateRemote method to          
// create instances of the default interface IModelObject exposed by              
// the CoClass ModelObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoModelObject = class
    class function Create: IModelObject;
    class function CreateRemote(const MachineName: string): IModelObject;
  end;

// *********************************************************************//
// The Class CoModelObjects provides a Create and CreateRemote method to          
// create instances of the default interface IModelObjects exposed by              
// the CoClass ModelObjects. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoModelObjects = class
    class function Create: IModelObjects;
    class function CreateRemote(const MachineName: string): IModelObjects;
  end;

// *********************************************************************//
// The Class CoParts7 provides a Create and CreateRemote method to          
// create instances of the default interface IParts7 exposed by              
// the CoClass Parts7. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoParts7 = class
    class function Create: IParts7;
    class function CreateRemote(const MachineName: string): IParts7;
  end;

// *********************************************************************//
// The Class CoPart7 provides a Create and CreateRemote method to          
// create instances of the default interface IPart7 exposed by              
// the CoClass Part7. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPart7 = class
    class function Create: IPart7;
    class function CreateRemote(const MachineName: string): IPart7;
  end;

// *********************************************************************//
// The Class CoSketchs provides a Create and CreateRemote method to          
// create instances of the default interface ISketchs exposed by              
// the CoClass Sketchs. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSketchs = class
    class function Create: ISketchs;
    class function CreateRemote(const MachineName: string): ISketchs;
  end;

// *********************************************************************//
// The Class CoExtrusions provides a Create and CreateRemote method to          
// create instances of the default interface IExtrusions exposed by              
// the CoClass Extrusions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoExtrusions = class
    class function Create: IExtrusions;
    class function CreateRemote(const MachineName: string): IExtrusions;
  end;

// *********************************************************************//
// The Class CoVariableTable provides a Create and CreateRemote method to          
// create instances of the default interface IVariableTable exposed by              
// the CoClass VariableTable. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoVariableTable = class
    class function Create: IVariableTable;
    class function CreateRemote(const MachineName: string): IVariableTable;
  end;

// *********************************************************************//
// The Class CoProgressBarIndicator provides a Create and CreateRemote method to          
// create instances of the default interface IProgressBarIndicator exposed by              
// the CoClass ProgressBarIndicator. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoProgressBarIndicator = class
    class function Create: IProgressBarIndicator;
    class function CreateRemote(const MachineName: string): IProgressBarIndicator;
  end;

// *********************************************************************//
// The Class CoText provides a Create and CreateRemote method to          
// create instances of the default interface IText exposed by              
// the CoClass Text. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoText = class
    class function Create: IText;
    class function CreateRemote(const MachineName: string): IText;
  end;

// *********************************************************************//
// The Class CoTextLine provides a Create and CreateRemote method to          
// create instances of the default interface ITextLine exposed by              
// the CoClass TextLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTextLine = class
    class function Create: ITextLine;
    class function CreateRemote(const MachineName: string): ITextLine;
  end;

// *********************************************************************//
// The Class CoTextItem provides a Create and CreateRemote method to          
// create instances of the default interface ITextItem exposed by              
// the CoClass TextItem. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTextItem = class
    class function Create: ITextItem;
    class function CreateRemote(const MachineName: string): ITextItem;
  end;

// *********************************************************************//
// The Class CoDrawingText provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingText exposed by              
// the CoClass DrawingText. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingText = class
    class function Create: IDrawingText;
    class function CreateRemote(const MachineName: string): IDrawingText;
  end;

// *********************************************************************//
// The Class CoDrawingTexts provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingTexts exposed by              
// the CoClass DrawingTexts. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingTexts = class
    class function Create: IDrawingTexts;
    class function CreateRemote(const MachineName: string): IDrawingTexts;
  end;

// *********************************************************************//
// The Class CoMarks provides a Create and CreateRemote method to          
// create instances of the default interface IMarks exposed by              
// the CoClass Marks. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMarks = class
    class function Create: IMarks;
    class function CreateRemote(const MachineName: string): IMarks;
  end;

// *********************************************************************//
// The Class CoMarkInsideForm provides a Create and CreateRemote method to          
// create instances of the default interface IMarkInsideForm exposed by              
// the CoClass MarkInsideForm. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMarkInsideForm = class
    class function Create: IMarkInsideForm;
    class function CreateRemote(const MachineName: string): IMarkInsideForm;
  end;

// *********************************************************************//
// The Class CoMarkOnLine provides a Create and CreateRemote method to          
// create instances of the default interface IMarkOnLine exposed by              
// the CoClass MarkOnLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMarkOnLine = class
    class function Create: IMarkOnLine;
    class function CreateRemote(const MachineName: string): IMarkOnLine;
  end;

// *********************************************************************//
// The Class CoMarkOnLeader provides a Create and CreateRemote method to          
// create instances of the default interface IMarkOnLeader exposed by              
// the CoClass MarkOnLeader. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMarkOnLeader = class
    class function Create: IMarkOnLeader;
    class function CreateRemote(const MachineName: string): IMarkOnLeader;
  end;

// *********************************************************************//
// The Class CoUserDataStoragesMng provides a Create and CreateRemote method to          
// create instances of the default interface IUserDataStoragesMng exposed by              
// the CoClass UserDataStoragesMng. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoUserDataStoragesMng = class
    class function Create: IUserDataStoragesMng;
    class function CreateRemote(const MachineName: string): IUserDataStoragesMng;
  end;

// *********************************************************************//
// The Class CoUserDataStorages provides a Create and CreateRemote method to          
// create instances of the default interface IUserDataStorages exposed by              
// the CoClass UserDataStorages. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoUserDataStorages = class
    class function Create: IUserDataStorages;
    class function CreateRemote(const MachineName: string): IUserDataStorages;
  end;

// *********************************************************************//
// The Class CoUserDataStorage provides a Create and CreateRemote method to          
// create instances of the default interface IUserDataStorage exposed by              
// the CoClass UserDataStorage. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoUserDataStorage = class
    class function Create: IUserDataStorage;
    class function CreateRemote(const MachineName: string): IUserDataStorage;
  end;

// *********************************************************************//
// The Class CoBuildingAxes provides a Create and CreateRemote method to          
// create instances of the default interface IBuildingAxes exposed by              
// the CoClass BuildingAxes. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBuildingAxes = class
    class function Create: IBuildingAxes;
    class function CreateRemote(const MachineName: string): IBuildingAxes;
  end;

// *********************************************************************//
// The Class CoStraightAxis provides a Create and CreateRemote method to          
// create instances of the default interface IStraightAxis exposed by              
// the CoClass StraightAxis. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoStraightAxis = class
    class function Create: IStraightAxis;
    class function CreateRemote(const MachineName: string): IStraightAxis;
  end;

// *********************************************************************//
// The Class CoArcAxis provides a Create and CreateRemote method to          
// create instances of the default interface IArcAxis exposed by              
// the CoClass ArcAxis. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoArcAxis = class
    class function Create: IArcAxis;
    class function CreateRemote(const MachineName: string): IArcAxis;
  end;

// *********************************************************************//
// The Class CoCircleAxis provides a Create and CreateRemote method to          
// create instances of the default interface ICircleAxis exposed by              
// the CoClass CircleAxis. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCircleAxis = class
    class function Create: ICircleAxis;
    class function CreateRemote(const MachineName: string): ICircleAxis;
  end;

// *********************************************************************//
// The Class CoAxisJut provides a Create and CreateRemote method to          
// create instances of the default interface IAxisJut exposed by              
// the CoClass AxisJut. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAxisJut = class
    class function Create: IAxisJut;
    class function CreateRemote(const MachineName: string): IAxisJut;
  end;

// *********************************************************************//
// The Class CoMarkNodes provides a Create and CreateRemote method to          
// create instances of the default interface IMarkNodes exposed by              
// the CoClass MarkNodes. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMarkNodes = class
    class function Create: IMarkNodes;
    class function CreateRemote(const MachineName: string): IMarkNodes;
  end;

// *********************************************************************//
// The Class CoMarkNode provides a Create and CreateRemote method to          
// create instances of the default interface IMarkNode exposed by              
// the CoClass MarkNode. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMarkNode = class
    class function Create: IMarkNode;
    class function CreateRemote(const MachineName: string): IMarkNode;
  end;

// *********************************************************************//
// The Class CoLineSegments provides a Create and CreateRemote method to          
// create instances of the default interface ILineSegments exposed by              
// the CoClass LineSegments. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLineSegments = class
    class function Create: ILineSegments;
    class function CreateRemote(const MachineName: string): ILineSegments;
  end;

// *********************************************************************//
// The Class CoLineSegment provides a Create and CreateRemote method to          
// create instances of the default interface ILineSegment exposed by              
// the CoClass LineSegment. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLineSegment = class
    class function Create: ILineSegment;
    class function CreateRemote(const MachineName: string): ILineSegment;
  end;

// *********************************************************************//
// The Class CoSystemSettings provides a Create and CreateRemote method to          
// create instances of the default interface ISystemSettings exposed by              
// the CoClass SystemSettings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSystemSettings = class
    class function Create: ISystemSettings;
    class function CreateRemote(const MachineName: string): ISystemSettings;
  end;

// *********************************************************************//
// The Class CoCutUnitMarking provides a Create and CreateRemote method to          
// create instances of the default interface ICutUnitMarking exposed by              
// the CoClass CutUnitMarking. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCutUnitMarking = class
    class function Create: ICutUnitMarking;
    class function CreateRemote(const MachineName: string): ICutUnitMarking;
  end;

// *********************************************************************//
// The Class CoCutUnitMarkings provides a Create and CreateRemote method to          
// create instances of the default interface ICutUnitMarkings exposed by              
// the CoClass CutUnitMarkings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCutUnitMarkings = class
    class function Create: ICutUnitMarkings;
    class function CreateRemote(const MachineName: string): ICutUnitMarkings;
  end;

// *********************************************************************//
// The Class CoUnitMarking provides a Create and CreateRemote method to          
// create instances of the default interface IUnitMarking exposed by              
// the CoClass UnitMarking. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoUnitMarking = class
    class function Create: IUnitMarking;
    class function CreateRemote(const MachineName: string): IUnitMarking;
  end;

// *********************************************************************//
// The Class CoUnitMarkings provides a Create and CreateRemote method to          
// create instances of the default interface IUnitMarkings exposed by              
// the CoClass UnitMarkings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoUnitMarkings = class
    class function Create: IUnitMarkings;
    class function CreateRemote(const MachineName: string): IUnitMarkings;
  end;

// *********************************************************************//
// The Class CoArcs provides a Create and CreateRemote method to          
// create instances of the default interface IArcs exposed by              
// the CoClass Arcs. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoArcs = class
    class function Create: IArcs;
    class function CreateRemote(const MachineName: string): IArcs;
  end;

// *********************************************************************//
// The Class Co_Arc provides a Create and CreateRemote method to          
// create instances of the default interface IArc exposed by              
// the CoClass _Arc. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Arc = class
    class function Create: IArc;
    class function CreateRemote(const MachineName: string): IArc;
  end;

// *********************************************************************//
// The Class CoMultiTextLeader provides a Create and CreateRemote method to          
// create instances of the default interface IMultiTextLeader exposed by              
// the CoClass MultiTextLeader. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMultiTextLeader = class
    class function Create: IMultiTextLeader;
    class function CreateRemote(const MachineName: string): IMultiTextLeader;
  end;

// *********************************************************************//
// The Class CoMultiTextLeaders provides a Create and CreateRemote method to          
// create instances of the default interface IMultiTextLeaders exposed by              
// the CoClass MultiTextLeaders. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMultiTextLeaders = class
    class function Create: IMultiTextLeaders;
    class function CreateRemote(const MachineName: string): IMultiTextLeaders;
  end;

// *********************************************************************//
// The Class CoBrace provides a Create and CreateRemote method to          
// create instances of the default interface IBrace exposed by              
// the CoClass Brace. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBrace = class
    class function Create: IBrace;
    class function CreateRemote(const MachineName: string): IBrace;
  end;

// *********************************************************************//
// The Class CoBraces provides a Create and CreateRemote method to          
// create instances of the default interface IBraces exposed by              
// the CoClass Braces. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBraces = class
    class function Create: IBraces;
    class function CreateRemote(const MachineName: string): IBraces;
  end;

// *********************************************************************//
// The Class CoUnitNumber provides a Create and CreateRemote method to          
// create instances of the default interface IUnitNumber exposed by              
// the CoClass UnitNumber. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoUnitNumber = class
    class function Create: IUnitNumber;
    class function CreateRemote(const MachineName: string): IUnitNumber;
  end;

// *********************************************************************//
// The Class CoUnitNumbers provides a Create and CreateRemote method to          
// create instances of the default interface IUnitNumbers exposed by              
// the CoClass UnitNumbers. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoUnitNumbers = class
    class function Create: IUnitNumbers;
    class function CreateRemote(const MachineName: string): IUnitNumbers;
  end;

// *********************************************************************//
// The Class CoSketch provides a Create and CreateRemote method to          
// create instances of the default interface ISketch exposed by              
// the CoClass Sketch. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSketch = class
    class function Create: ISketch;
    class function CreateRemote(const MachineName: string): ISketch;
  end;

// *********************************************************************//
// The Class CoExtrusion provides a Create and CreateRemote method to          
// create instances of the default interface IExtrusion exposed by              
// the CoClass Extrusion. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoExtrusion = class
    class function Create: IExtrusion;
    class function CreateRemote(const MachineName: string): IExtrusion;
  end;

// *********************************************************************//
// The Class CoParametriticConstraint provides a Create and CreateRemote method to          
// create instances of the default interface IParametriticConstraint exposed by              
// the CoClass ParametriticConstraint. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoParametriticConstraint = class
    class function Create: IParametriticConstraint;
    class function CreateRemote(const MachineName: string): IParametriticConstraint;
  end;

// *********************************************************************//
// The Class CoCutExtrusion provides a Create and CreateRemote method to          
// create instances of the default interface ICutExtrusion exposed by              
// the CoClass CutExtrusion. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCutExtrusion = class
    class function Create: ICutExtrusion;
    class function CreateRemote(const MachineName: string): ICutExtrusion;
  end;

// *********************************************************************//
// The Class CoBody7 provides a Create and CreateRemote method to          
// create instances of the default interface IBody7 exposed by              
// the CoClass Body7. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBody7 = class
    class function Create: IBody7;
    class function CreateRemote(const MachineName: string): IBody7;
  end;

// *********************************************************************//
// The Class CoSheetMetalBodies provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalBodies exposed by              
// the CoClass SheetMetalBodies. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalBodies = class
    class function Create: ISheetMetalBodies;
    class function CreateRemote(const MachineName: string): ISheetMetalBodies;
  end;

// *********************************************************************//
// The Class CoSheetMetalBody provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalBody exposed by              
// the CoClass SheetMetalBody. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalBody = class
    class function Create: ISheetMetalBody;
    class function CreateRemote(const MachineName: string): ISheetMetalBody;
  end;

// *********************************************************************//
// The Class CoPoints3D provides a Create and CreateRemote method to          
// create instances of the default interface IPoints3D exposed by              
// the CoClass Points3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoints3D = class
    class function Create: IPoints3D;
    class function CreateRemote(const MachineName: string): IPoints3D;
  end;

// *********************************************************************//
// The Class CoPoint3D provides a Create and CreateRemote method to          
// create instances of the default interface IPoint3D exposed by              
// the CoClass Point3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoint3D = class
    class function Create: IPoint3D;
    class function CreateRemote(const MachineName: string): IPoint3D;
  end;

// *********************************************************************//
// The Class CoPoint3DParamDisplace provides a Create and CreateRemote method to          
// create instances of the default interface IPoint3DParamDisplace exposed by              
// the CoClass Point3DParamDisplace. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoint3DParamDisplace = class
    class function Create: IPoint3DParamDisplace;
    class function CreateRemote(const MachineName: string): IPoint3DParamDisplace;
  end;

// *********************************************************************//
// The Class CoPoint3DParamIntersect provides a Create and CreateRemote method to          
// create instances of the default interface IPoint3DParamIntersect exposed by              
// the CoClass Point3DParamIntersect. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoint3DParamIntersect = class
    class function Create: IPoint3DParamIntersect;
    class function CreateRemote(const MachineName: string): IPoint3DParamIntersect;
  end;

// *********************************************************************//
// The Class CoPoint3DParamCenter provides a Create and CreateRemote method to          
// create instances of the default interface IPoint3DParamCenter exposed by              
// the CoClass Point3DParamCenter. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoint3DParamCenter = class
    class function Create: IPoint3DParamCenter;
    class function CreateRemote(const MachineName: string): IPoint3DParamCenter;
  end;

// *********************************************************************//
// The Class CoPoint3DParamCurve provides a Create and CreateRemote method to          
// create instances of the default interface IPoint3DParamCurve exposed by              
// the CoClass Point3DParamCurve. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoint3DParamCurve = class
    class function Create: IPoint3DParamCurve;
    class function CreateRemote(const MachineName: string): IPoint3DParamCurve;
  end;

// *********************************************************************//
// The Class CoPoint3DParamSurface provides a Create and CreateRemote method to          
// create instances of the default interface IPoint3DParamSurface exposed by              
// the CoClass Point3DParamSurface. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoint3DParamSurface = class
    class function Create: IPoint3DParamSurface;
    class function CreateRemote(const MachineName: string): IPoint3DParamSurface;
  end;

// *********************************************************************//
// The Class CoPoint3DParamProjection provides a Create and CreateRemote method to          
// create instances of the default interface IPoint3DParamProjection exposed by              
// the CoClass Point3DParamProjection. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoint3DParamProjection = class
    class function Create: IPoint3DParamProjection;
    class function CreateRemote(const MachineName: string): IPoint3DParamProjection;
  end;

// *********************************************************************//
// The Class CoSheetMetalBends provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalBends exposed by              
// the CoClass SheetMetalBends. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalBends = class
    class function Create: ISheetMetalBends;
    class function CreateRemote(const MachineName: string): ISheetMetalBends;
  end;

// *********************************************************************//
// The Class CoSheetMetalBend provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalBend exposed by              
// the CoClass SheetMetalBend. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalBend = class
    class function Create: ISheetMetalBend;
    class function CreateRemote(const MachineName: string): ISheetMetalBend;
  end;

// *********************************************************************//
// The Class CoSheetMetalLineBends provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalLineBends exposed by              
// the CoClass SheetMetalLineBends. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalLineBends = class
    class function Create: ISheetMetalLineBends;
    class function CreateRemote(const MachineName: string): ISheetMetalLineBends;
  end;

// *********************************************************************//
// The Class CoSheetMetalLineBend provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalLineBend exposed by              
// the CoClass SheetMetalLineBend. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalLineBend = class
    class function Create: ISheetMetalLineBend;
    class function CreateRemote(const MachineName: string): ISheetMetalLineBend;
  end;

// *********************************************************************//
// The Class CoSheetMetalHole provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalHole exposed by              
// the CoClass SheetMetalHole. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalHole = class
    class function Create: ISheetMetalHole;
    class function CreateRemote(const MachineName: string): ISheetMetalHole;
  end;

// *********************************************************************//
// The Class CoSheetMetalHoles provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalHoles exposed by              
// the CoClass SheetMetalHoles. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalHoles = class
    class function Create: ISheetMetalHoles;
    class function CreateRemote(const MachineName: string): ISheetMetalHoles;
  end;

// *********************************************************************//
// The Class CoSheetMetalCut provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalCut exposed by              
// the CoClass SheetMetalCut. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalCut = class
    class function Create: ISheetMetalCut;
    class function CreateRemote(const MachineName: string): ISheetMetalCut;
  end;

// *********************************************************************//
// The Class CoSheetMetalCuts provides a Create and CreateRemote method to          
// create instances of the default interface ISheetMetalCuts exposed by              
// the CoClass SheetMetalCuts. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSheetMetalCuts = class
    class function Create: ISheetMetalCuts;
    class function CreateRemote(const MachineName: string): ISheetMetalCuts;
  end;

// *********************************************************************//
// The Class CoRadialDimension provides a Create and CreateRemote method to          
// create instances of the default interface IRadialDimension exposed by              
// the CoClass RadialDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRadialDimension = class
    class function Create: IRadialDimension;
    class function CreateRemote(const MachineName: string): IRadialDimension;
  end;

// *********************************************************************//
// The Class CoRadialDimensions provides a Create and CreateRemote method to          
// create instances of the default interface IRadialDimensions exposed by              
// the CoClass RadialDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRadialDimensions = class
    class function Create: IRadialDimensions;
    class function CreateRemote(const MachineName: string): IRadialDimensions;
  end;

// *********************************************************************//
// The Class CoBreakRadialDimension provides a Create and CreateRemote method to          
// create instances of the default interface IBreakRadialDimension exposed by              
// the CoClass BreakRadialDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBreakRadialDimension = class
    class function Create: IBreakRadialDimension;
    class function CreateRemote(const MachineName: string): IBreakRadialDimension;
  end;

// *********************************************************************//
// The Class CoRadialBreakDimensions provides a Create and CreateRemote method to          
// create instances of the default interface IBreakRadialDimensions exposed by              
// the CoClass RadialBreakDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRadialBreakDimensions = class
    class function Create: IBreakRadialDimensions;
    class function CreateRemote(const MachineName: string): IBreakRadialDimensions;
  end;

// *********************************************************************//
// The Class CoDiametralDimension provides a Create and CreateRemote method to          
// create instances of the default interface IDiametralDimension exposed by              
// the CoClass DiametralDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDiametralDimension = class
    class function Create: IDiametralDimension;
    class function CreateRemote(const MachineName: string): IDiametralDimension;
  end;

// *********************************************************************//
// The Class CoDiametralDimensions provides a Create and CreateRemote method to          
// create instances of the default interface IDiametralDimensions exposed by              
// the CoClass DiametralDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDiametralDimensions = class
    class function Create: IDiametralDimensions;
    class function CreateRemote(const MachineName: string): IDiametralDimensions;
  end;

// *********************************************************************//
// The Class CoLineDimensions3D provides a Create and CreateRemote method to          
// create instances of the default interface ILineDimensions3D exposed by              
// the CoClass LineDimensions3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLineDimensions3D = class
    class function Create: ILineDimensions3D;
    class function CreateRemote(const MachineName: string): ILineDimensions3D;
  end;

// *********************************************************************//
// The Class CoBaseLineDimension3D provides a Create and CreateRemote method to          
// create instances of the default interface IBaseLineDimension3D exposed by              
// the CoClass BaseLineDimension3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBaseLineDimension3D = class
    class function Create: IBaseLineDimension3D;
    class function CreateRemote(const MachineName: string): IBaseLineDimension3D;
  end;

// *********************************************************************//
// The Class CoLineDimension3D provides a Create and CreateRemote method to          
// create instances of the default interface ILineDimension3D exposed by              
// the CoClass LineDimension3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLineDimension3D = class
    class function Create: ILineDimension3D;
    class function CreateRemote(const MachineName: string): ILineDimension3D;
  end;

// *********************************************************************//
// The Class CoLineDimension provides a Create and CreateRemote method to          
// create instances of the default interface ILineDimension exposed by              
// the CoClass LineDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLineDimension = class
    class function Create: ILineDimension;
    class function CreateRemote(const MachineName: string): ILineDimension;
  end;

// *********************************************************************//
// The Class CoLineDimensions provides a Create and CreateRemote method to          
// create instances of the default interface ILineDimensions exposed by              
// the CoClass LineDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLineDimensions = class
    class function Create: ILineDimensions;
    class function CreateRemote(const MachineName: string): ILineDimensions;
  end;

// *********************************************************************//
// The Class CoRadialDimension3D provides a Create and CreateRemote method to          
// create instances of the default interface IRadialDimension3D exposed by              
// the CoClass RadialDimension3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRadialDimension3D = class
    class function Create: IRadialDimension3D;
    class function CreateRemote(const MachineName: string): IRadialDimension3D;
  end;

// *********************************************************************//
// The Class CoDiametralDimension3D provides a Create and CreateRemote method to          
// create instances of the default interface IDiametralDimension3D exposed by              
// the CoClass DiametralDimension3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDiametralDimension3D = class
    class function Create: IDiametralDimension3D;
    class function CreateRemote(const MachineName: string): IDiametralDimension3D;
  end;

// *********************************************************************//
// The Class CoRadialDimensions3D provides a Create and CreateRemote method to          
// create instances of the default interface IRadialDimensions3D exposed by              
// the CoClass RadialDimensions3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRadialDimensions3D = class
    class function Create: IRadialDimensions3D;
    class function CreateRemote(const MachineName: string): IRadialDimensions3D;
  end;

// *********************************************************************//
// The Class CoDiametralDimensions3D provides a Create and CreateRemote method to          
// create instances of the default interface IDiametralDimensions3D exposed by              
// the CoClass DiametralDimensions3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDiametralDimensions3D = class
    class function Create: IDiametralDimensions3D;
    class function CreateRemote(const MachineName: string): IDiametralDimensions3D;
  end;

// *********************************************************************//
// The Class CoBreakLineDimension provides a Create and CreateRemote method to          
// create instances of the default interface IBreakLineDimension exposed by              
// the CoClass BreakLineDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBreakLineDimension = class
    class function Create: IBreakLineDimension;
    class function CreateRemote(const MachineName: string): IBreakLineDimension;
  end;

// *********************************************************************//
// The Class CoBreakLineDimensions provides a Create and CreateRemote method to          
// create instances of the default interface IBreakLineDimensions exposed by              
// the CoClass BreakLineDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBreakLineDimensions = class
    class function Create: IBreakLineDimensions;
    class function CreateRemote(const MachineName: string): IBreakLineDimensions;
  end;

// *********************************************************************//
// The Class CoHeightDimension provides a Create and CreateRemote method to          
// create instances of the default interface IHeightDimension exposed by              
// the CoClass HeightDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoHeightDimension = class
    class function Create: IHeightDimension;
    class function CreateRemote(const MachineName: string): IHeightDimension;
  end;

// *********************************************************************//
// The Class CoHeightDimensions provides a Create and CreateRemote method to          
// create instances of the default interface IHeightDimensions exposed by              
// the CoClass HeightDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoHeightDimensions = class
    class function Create: IHeightDimensions;
    class function CreateRemote(const MachineName: string): IHeightDimensions;
  end;

// *********************************************************************//
// The Class CoAngleDimension provides a Create and CreateRemote method to          
// create instances of the default interface IAngleDimension exposed by              
// the CoClass AngleDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAngleDimension = class
    class function Create: IAngleDimension;
    class function CreateRemote(const MachineName: string): IAngleDimension;
  end;

// *********************************************************************//
// The Class CoAngleDimensions provides a Create and CreateRemote method to          
// create instances of the default interface IAngleDimensions exposed by              
// the CoClass AngleDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAngleDimensions = class
    class function Create: IAngleDimensions;
    class function CreateRemote(const MachineName: string): IAngleDimensions;
  end;

// *********************************************************************//
// The Class CoBreakAngleDimension provides a Create and CreateRemote method to          
// create instances of the default interface IBreakAngleDimension exposed by              
// the CoClass BreakAngleDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBreakAngleDimension = class
    class function Create: IBreakAngleDimension;
    class function CreateRemote(const MachineName: string): IBreakAngleDimension;
  end;

// *********************************************************************//
// The Class CoArcDimension provides a Create and CreateRemote method to          
// create instances of the default interface IArcDimension exposed by              
// the CoClass ArcDimension. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoArcDimension = class
    class function Create: IArcDimension;
    class function CreateRemote(const MachineName: string): IArcDimension;
  end;

// *********************************************************************//
// The Class CoArcDimensions provides a Create and CreateRemote method to          
// create instances of the default interface IArcDimensions exposed by              
// the CoClass ArcDimensions. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoArcDimensions = class
    class function Create: IArcDimensions;
    class function CreateRemote(const MachineName: string): IArcDimensions;
  end;

// *********************************************************************//
// The Class CoAngleDimension3D provides a Create and CreateRemote method to          
// create instances of the default interface IAngleDimension3D exposed by              
// the CoClass AngleDimension3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAngleDimension3D = class
    class function Create: IAngleDimension3D;
    class function CreateRemote(const MachineName: string): IAngleDimension3D;
  end;

// *********************************************************************//
// The Class CoAngleDimensions3D provides a Create and CreateRemote method to          
// create instances of the default interface IAngleDimensions3D exposed by              
// the CoClass AngleDimensions3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAngleDimensions3D = class
    class function Create: IAngleDimensions3D;
    class function CreateRemote(const MachineName: string): IAngleDimensions3D;
  end;

// *********************************************************************//
// The Class CoCurveVertexParam provides a Create and CreateRemote method to          
// create instances of the default interface ICurveVertexParam exposed by              
// the CoClass CurveVertexParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCurveVertexParam = class
    class function Create: ICurveVertexParam;
    class function CreateRemote(const MachineName: string): ICurveVertexParam;
  end;

// *********************************************************************//
// The Class CoSplines3D provides a Create and CreateRemote method to          
// create instances of the default interface ISplines3D exposed by              
// the CoClass Splines3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSplines3D = class
    class function Create: ISplines3D;
    class function CreateRemote(const MachineName: string): ISplines3D;
  end;

// *********************************************************************//
// The Class CoSpline3D provides a Create and CreateRemote method to          
// create instances of the default interface ISpline3D exposed by              
// the CoClass Spline3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSpline3D = class
    class function Create: ISpline3D;
    class function CreateRemote(const MachineName: string): ISpline3D;
  end;

// *********************************************************************//
// The Class CoLocalCoordinateSystem provides a Create and CreateRemote method to          
// create instances of the default interface ILocalCoordinateSystem exposed by              
// the CoClass LocalCoordinateSystem. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLocalCoordinateSystem = class
    class function Create: ILocalCoordinateSystem;
    class function CreateRemote(const MachineName: string): ILocalCoordinateSystem;
  end;

// *********************************************************************//
// The Class CoLocalCoordinateSystems provides a Create and CreateRemote method to          
// create instances of the default interface ILocalCoordinateSystems exposed by              
// the CoClass LocalCoordinateSystems. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLocalCoordinateSystems = class
    class function Create: ILocalCoordinateSystems;
    class function CreateRemote(const MachineName: string): ILocalCoordinateSystems;
  end;

// *********************************************************************//
// The Class CoLocalCSAxesDirectionParam provides a Create and CreateRemote method to          
// create instances of the default interface ILocalCSAxesDirectionParam exposed by              
// the CoClass LocalCSAxesDirectionParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLocalCSAxesDirectionParam = class
    class function Create: ILocalCSAxesDirectionParam;
    class function CreateRemote(const MachineName: string): ILocalCSAxesDirectionParam;
  end;

// *********************************************************************//
// The Class CoLocalCSEulerParam provides a Create and CreateRemote method to          
// create instances of the default interface ILocalCSEulerParam exposed by              
// the CoClass LocalCSEulerParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLocalCSEulerParam = class
    class function Create: ILocalCSEulerParam;
    class function CreateRemote(const MachineName: string): ILocalCSEulerParam;
  end;

// *********************************************************************//
// The Class CoPolyLine provides a Create and CreateRemote method to          
// create instances of the default interface IPolyLine exposed by              
// the CoClass PolyLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPolyLine = class
    class function Create: IPolyLine;
    class function CreateRemote(const MachineName: string): IPolyLine;
  end;

// *********************************************************************//
// The Class CoPolyLines provides a Create and CreateRemote method to          
// create instances of the default interface IPolyLines exposed by              
// the CoClass PolyLines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPolyLines = class
    class function Create: IPolyLines;
    class function CreateRemote(const MachineName: string): IPolyLines;
  end;

// *********************************************************************//
// The Class CoBaseLeader provides a Create and CreateRemote method to          
// create instances of the default interface IBaseLeader exposed by              
// the CoClass BaseLeader. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBaseLeader = class
    class function Create: IBaseLeader;
    class function CreateRemote(const MachineName: string): IBaseLeader;
  end;

// *********************************************************************//
// The Class CoLeaders provides a Create and CreateRemote method to          
// create instances of the default interface ILeaders exposed by              
// the CoClass Leaders. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLeaders = class
    class function Create: ILeaders;
    class function CreateRemote(const MachineName: string): ILeaders;
  end;

// *********************************************************************//
// The Class CoRoughs provides a Create and CreateRemote method to          
// create instances of the default interface IRoughs exposed by              
// the CoClass Roughs. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRoughs = class
    class function Create: IRoughs;
    class function CreateRemote(const MachineName: string): IRoughs;
  end;

// *********************************************************************//
// The Class CoRough provides a Create and CreateRemote method to          
// create instances of the default interface IRough exposed by              
// the CoClass Rough. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRough = class
    class function Create: IRough;
    class function CreateRemote(const MachineName: string): IRough;
  end;

// *********************************************************************//
// The Class CoBaseLeader3D provides a Create and CreateRemote method to          
// create instances of the default interface IBaseLeader3D exposed by              
// the CoClass BaseLeader3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBaseLeader3D = class
    class function Create: IBaseLeader3D;
    class function CreateRemote(const MachineName: string): IBaseLeader3D;
  end;

// *********************************************************************//
// The Class CoLeaders3D provides a Create and CreateRemote method to          
// create instances of the default interface ILeaders3D exposed by              
// the CoClass Leaders3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLeaders3D = class
    class function Create: ILeaders3D;
    class function CreateRemote(const MachineName: string): ILeaders3D;
  end;

// *********************************************************************//
// The Class CoRough3D provides a Create and CreateRemote method to          
// create instances of the default interface IRough3D exposed by              
// the CoClass Rough3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRough3D = class
    class function Create: IRough3D;
    class function CreateRemote(const MachineName: string): IRough3D;
  end;

// *********************************************************************//
// The Class CoRoughs3D provides a Create and CreateRemote method to          
// create instances of the default interface IRoughs3D exposed by              
// the CoClass Roughs3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRoughs3D = class
    class function Create: IRoughs3D;
    class function CreateRemote(const MachineName: string): IRoughs3D;
  end;

// *********************************************************************//
// The Class Co_Base provides a Create and CreateRemote method to          
// create instances of the default interface IBase exposed by              
// the CoClass _Base. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Base = class
    class function Create: IBase;
    class function CreateRemote(const MachineName: string): IBase;
  end;

// *********************************************************************//
// The Class CoBases provides a Create and CreateRemote method to          
// create instances of the default interface IBases exposed by              
// the CoClass Bases. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBases = class
    class function Create: IBases;
    class function CreateRemote(const MachineName: string): IBases;
  end;

// *********************************************************************//
// The Class CoTableCell provides a Create and CreateRemote method to          
// create instances of the default interface ITableCell exposed by              
// the CoClass TableCell. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTableCell = class
    class function Create: ITableCell;
    class function CreateRemote(const MachineName: string): ITableCell;
  end;

// *********************************************************************//
// The Class CoDrawingTable provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingTable exposed by              
// the CoClass DrawingTable. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingTable = class
    class function Create: IDrawingTable;
    class function CreateRemote(const MachineName: string): IDrawingTable;
  end;

// *********************************************************************//
// The Class CoDrawingTables provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingTables exposed by              
// the CoClass DrawingTables. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingTables = class
    class function Create: IDrawingTables;
    class function CreateRemote(const MachineName: string): IDrawingTables;
  end;

// *********************************************************************//
// The Class CoTolerances provides a Create and CreateRemote method to          
// create instances of the default interface ITolerances exposed by              
// the CoClass Tolerances. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTolerances = class
    class function Create: ITolerances;
    class function CreateRemote(const MachineName: string): ITolerances;
  end;

// *********************************************************************//
// The Class Co_Tolerance provides a Create and CreateRemote method to          
// create instances of the default interface ITolerance exposed by              
// the CoClass _Tolerance. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Tolerance = class
    class function Create: ITolerance;
    class function CreateRemote(const MachineName: string): ITolerance;
  end;

// *********************************************************************//
// The Class CoBases3D provides a Create and CreateRemote method to          
// create instances of the default interface IBases3D exposed by              
// the CoClass Bases3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBases3D = class
    class function Create: IBases3D;
    class function CreateRemote(const MachineName: string): IBases3D;
  end;

// *********************************************************************//
// The Class CoBase3D provides a Create and CreateRemote method to          
// create instances of the default interface IBase3D exposed by              
// the CoClass Base3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBase3D = class
    class function Create: IBase3D;
    class function CreateRemote(const MachineName: string): IBase3D;
  end;

// *********************************************************************//
// The Class CoTolerances3D provides a Create and CreateRemote method to          
// create instances of the default interface ITolerances3D exposed by              
// the CoClass Tolerances3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTolerances3D = class
    class function Create: ITolerances3D;
    class function CreateRemote(const MachineName: string): ITolerances3D;
  end;

// *********************************************************************//
// The Class CoTolerance3D provides a Create and CreateRemote method to          
// create instances of the default interface ITolerance3D exposed by              
// the CoClass Tolerance3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTolerance3D = class
    class function Create: ITolerance3D;
    class function CreateRemote(const MachineName: string): ITolerance3D;
  end;

// *********************************************************************//
// The Class CoLocalCSOrientByObjectParam provides a Create and CreateRemote method to          
// create instances of the default interface ILocalCSOrientByObjectParam exposed by              
// the CoClass LocalCSOrientByObjectParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLocalCSOrientByObjectParam = class
    class function Create: ILocalCSOrientByObjectParam;
    class function CreateRemote(const MachineName: string): ILocalCSOrientByObjectParam;
  end;

// *********************************************************************//
// The Class CoCutLine provides a Create and CreateRemote method to          
// create instances of the default interface ICutLine exposed by              
// the CoClass CutLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCutLine = class
    class function Create: ICutLine;
    class function CreateRemote(const MachineName: string): ICutLine;
  end;

// *********************************************************************//
// The Class CoCutLines provides a Create and CreateRemote method to          
// create instances of the default interface ICutLines exposed by              
// the CoClass CutLines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCutLines = class
    class function Create: ICutLines;
    class function CreateRemote(const MachineName: string): ICutLines;
  end;

// *********************************************************************//
// The Class CoExternalTessellationObject provides a Create and CreateRemote method to          
// create instances of the default interface IExternalTessellationObject exposed by              
// the CoClass ExternalTessellationObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoExternalTessellationObject = class
    class function Create: IExternalTessellationObject;
    class function CreateRemote(const MachineName: string): IExternalTessellationObject;
  end;

// *********************************************************************//
// The Class CoControlPoints provides a Create and CreateRemote method to          
// create instances of the default interface IControlPoints exposed by              
// the CoClass ControlPoints. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoControlPoints = class
    class function Create: IControlPoints;
    class function CreateRemote(const MachineName: string): IControlPoints;
  end;

// *********************************************************************//
// The Class CoControlPoint provides a Create and CreateRemote method to          
// create instances of the default interface IControlPoint exposed by              
// the CoClass ControlPoint. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoControlPoint = class
    class function Create: IControlPoint;
    class function CreateRemote(const MachineName: string): IControlPoint;
  end;

// *********************************************************************//
// The Class CoConjunctivePoints provides a Create and CreateRemote method to          
// create instances of the default interface IConjunctivePoints exposed by              
// the CoClass ConjunctivePoints. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoConjunctivePoints = class
    class function Create: IConjunctivePoints;
    class function CreateRemote(const MachineName: string): IConjunctivePoints;
  end;

// *********************************************************************//
// The Class CoConjunctivePoint provides a Create and CreateRemote method to          
// create instances of the default interface IConjunctivePoint exposed by              
// the CoClass ConjunctivePoint. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoConjunctivePoint = class
    class function Create: IConjunctivePoint;
    class function CreateRemote(const MachineName: string): IConjunctivePoint;
  end;

// *********************************************************************//
// The Class CoPropertyBmpList provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyBmpList exposed by              
// the CoClass PropertyBmpList. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyBmpList = class
    class function Create: IPropertyBmpList;
    class function CreateRemote(const MachineName: string): IPropertyBmpList;
  end;

// *********************************************************************//
// The Class CoViewPointer provides a Create and CreateRemote method to          
// create instances of the default interface IViewPointer exposed by              
// the CoClass ViewPointer. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoViewPointer = class
    class function Create: IViewPointer;
    class function CreateRemote(const MachineName: string): IViewPointer;
  end;

// *********************************************************************//
// The Class CoViewPointers provides a Create and CreateRemote method to          
// create instances of the default interface IViewPointers exposed by              
// the CoClass ViewPointers. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoViewPointers = class
    class function Create: IViewPointers;
    class function CreateRemote(const MachineName: string): IViewPointers;
  end;

// *********************************************************************//
// The Class CoMultiline provides a Create and CreateRemote method to          
// create instances of the default interface IMultiline exposed by              
// the CoClass Multiline. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMultiline = class
    class function Create: IMultiline;
    class function CreateRemote(const MachineName: string): IMultiline;
  end;

// *********************************************************************//
// The Class CoMultilines provides a Create and CreateRemote method to          
// create instances of the default interface IMultilines exposed by              
// the CoClass Multilines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMultilines = class
    class function Create: IMultilines;
    class function CreateRemote(const MachineName: string): IMultilines;
  end;

// *********************************************************************//
// The Class CoContour provides a Create and CreateRemote method to          
// create instances of the default interface IContour exposed by              
// the CoClass Contour. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoContour = class
    class function Create: IContour;
    class function CreateRemote(const MachineName: string): IContour;
  end;

// *********************************************************************//
// The Class CoContourSegment provides a Create and CreateRemote method to          
// create instances of the default interface IContourSegment exposed by              
// the CoClass ContourSegment. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoContourSegment = class
    class function Create: IContourSegment;
    class function CreateRemote(const MachineName: string): IContourSegment;
  end;

// *********************************************************************//
// The Class CoContourLineSegment provides a Create and CreateRemote method to          
// create instances of the default interface IContourLineSegment exposed by              
// the CoClass ContourLineSegment. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoContourLineSegment = class
    class function Create: IContourLineSegment;
    class function CreateRemote(const MachineName: string): IContourLineSegment;
  end;

// *********************************************************************//
// The Class CoContourArc provides a Create and CreateRemote method to          
// create instances of the default interface IContourArc exposed by              
// the CoClass ContourArc. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoContourArc = class
    class function Create: IContourArc;
    class function CreateRemote(const MachineName: string): IContourArc;
  end;

// *********************************************************************//
// The Class CoCurve2D provides a Create and CreateRemote method to          
// create instances of the default interface ICurve2D exposed by              
// the CoClass Curve2D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCurve2D = class
    class function Create: ICurve2D;
    class function CreateRemote(const MachineName: string): ICurve2D;
  end;

// *********************************************************************//
// The Class CoDrawingContours provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingContours exposed by              
// the CoClass DrawingContours. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingContours = class
    class function Create: IDrawingContours;
    class function CreateRemote(const MachineName: string): IDrawingContours;
  end;

// *********************************************************************//
// The Class CoDrawingContour provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingContour exposed by              
// the CoClass DrawingContour. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingContour = class
    class function Create: IDrawingContour;
    class function CreateRemote(const MachineName: string): IDrawingContour;
  end;

// *********************************************************************//
// The Class CoSplitLines provides a Create and CreateRemote method to          
// create instances of the default interface ISplitLines exposed by              
// the CoClass SplitLines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSplitLines = class
    class function Create: ISplitLines;
    class function CreateRemote(const MachineName: string): ISplitLines;
  end;

// *********************************************************************//
// The Class CoSplitLine provides a Create and CreateRemote method to          
// create instances of the default interface ISplitLine exposed by              
// the CoClass SplitLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSplitLine = class
    class function Create: ISplitLine;
    class function CreateRemote(const MachineName: string): ISplitLine;
  end;

// *********************************************************************//
// The Class CoSurfacePatches provides a Create and CreateRemote method to          
// create instances of the default interface ISurfacePatches exposed by              
// the CoClass SurfacePatches. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSurfacePatches = class
    class function Create: ISurfacePatches;
    class function CreateRemote(const MachineName: string): ISurfacePatches;
  end;

// *********************************************************************//
// The Class CoSurfacePatch provides a Create and CreateRemote method to          
// create instances of the default interface ISurfacePatch exposed by              
// the CoClass SurfacePatch. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSurfacePatch = class
    class function Create: ISurfacePatch;
    class function CreateRemote(const MachineName: string): ISurfacePatch;
  end;

// *********************************************************************//
// The Class CoFaceRemovers provides a Create and CreateRemote method to          
// create instances of the default interface IFaceRemovers exposed by              
// the CoClass FaceRemovers. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoFaceRemovers = class
    class function Create: IFaceRemovers;
    class function CreateRemote(const MachineName: string): IFaceRemovers;
  end;

// *********************************************************************//
// The Class CoFaceRemover provides a Create and CreateRemote method to          
// create instances of the default interface IFaceRemover exposed by              
// the CoClass FaceRemover. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoFaceRemover = class
    class function Create: IFaceRemover;
    class function CreateRemote(const MachineName: string): IFaceRemover;
  end;

// *********************************************************************//
// The Class CoSurfaceSewers provides a Create and CreateRemote method to          
// create instances of the default interface ISurfaceSewers exposed by              
// the CoClass SurfaceSewers. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSurfaceSewers = class
    class function Create: ISurfaceSewers;
    class function CreateRemote(const MachineName: string): ISurfaceSewers;
  end;

// *********************************************************************//
// The Class CoSurfaceSewer provides a Create and CreateRemote method to          
// create instances of the default interface ISurfaceSewer exposed by              
// the CoClass SurfaceSewer. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSurfaceSewer = class
    class function Create: ISurfaceSewer;
    class function CreateRemote(const MachineName: string): ISurfaceSewer;
  end;

// *********************************************************************//
// The Class CoNurbsSurfaces provides a Create and CreateRemote method to          
// create instances of the default interface INurbsSurfaces exposed by              
// the CoClass NurbsSurfaces. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoNurbsSurfaces = class
    class function Create: INurbsSurfaces;
    class function CreateRemote(const MachineName: string): INurbsSurfaces;
  end;

// *********************************************************************//
// The Class CoNurbsSurface provides a Create and CreateRemote method to          
// create instances of the default interface INurbsSurface exposed by              
// the CoClass NurbsSurface. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoNurbsSurface = class
    class function Create: INurbsSurface;
    class function CreateRemote(const MachineName: string): INurbsSurface;
  end;

// *********************************************************************//
// The Class CoPropertyLibExplorer provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyLibExplorer exposed by              
// the CoClass PropertyLibExplorer. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyLibExplorer = class
    class function Create: IPropertyLibExplorer;
    class function CreateRemote(const MachineName: string): IPropertyLibExplorer;
  end;

// *********************************************************************//
// The Class CoExternalGDIObject provides a Create and CreateRemote method to          
// create instances of the default interface IExternalGDIObject exposed by              
// the CoClass ExternalGDIObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoExternalGDIObject = class
    class function Create: IExternalGDIObject;
    class function CreateRemote(const MachineName: string): IExternalGDIObject;
  end;

// *********************************************************************//
// The Class CoCircles provides a Create and CreateRemote method to          
// create instances of the default interface ICircles exposed by              
// the CoClass Circles. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCircles = class
    class function Create: ICircles;
    class function CreateRemote(const MachineName: string): ICircles;
  end;

// *********************************************************************//
// The Class Co_Circle provides a Create and CreateRemote method to          
// create instances of the default interface ICircle exposed by              
// the CoClass _Circle. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Circle = class
    class function Create: ICircle;
    class function CreateRemote(const MachineName: string): ICircle;
  end;

// *********************************************************************//
// The Class CoMacroObjects provides a Create and CreateRemote method to          
// create instances of the default interface IMacroObjects exposed by              
// the CoClass MacroObjects. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMacroObjects = class
    class function Create: IMacroObjects;
    class function CreateRemote(const MachineName: string): IMacroObjects;
  end;

// *********************************************************************//
// The Class CoMacroObject provides a Create and CreateRemote method to          
// create instances of the default interface IMacroObject exposed by              
// the CoClass MacroObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMacroObject = class
    class function Create: IMacroObject;
    class function CreateRemote(const MachineName: string): IMacroObject;
  end;

// *********************************************************************//
// The Class CoEllipses provides a Create and CreateRemote method to          
// create instances of the default interface IEllipses exposed by              
// the CoClass Ellipses. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoEllipses = class
    class function Create: IEllipses;
    class function CreateRemote(const MachineName: string): IEllipses;
  end;

// *********************************************************************//
// The Class Co_Ellipse provides a Create and CreateRemote method to          
// create instances of the default interface IEllipse exposed by              
// the CoClass _Ellipse. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Ellipse = class
    class function Create: IEllipse;
    class function CreateRemote(const MachineName: string): IEllipse;
  end;

// *********************************************************************//
// The Class CoEllipseArcs provides a Create and CreateRemote method to          
// create instances of the default interface IEllipseArcs exposed by              
// the CoClass EllipseArcs. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoEllipseArcs = class
    class function Create: IEllipseArcs;
    class function CreateRemote(const MachineName: string): IEllipseArcs;
  end;

// *********************************************************************//
// The Class Co_EllipseArc provides a Create and CreateRemote method to          
// create instances of the default interface IEllipseArc exposed by              
// the CoClass _EllipseArc. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_EllipseArc = class
    class function Create: IEllipseArc;
    class function CreateRemote(const MachineName: string): IEllipseArc;
  end;

// *********************************************************************//
// The Class Co_Point provides a Create and CreateRemote method to          
// create instances of the default interface IPoint exposed by              
// the CoClass _Point. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Point = class
    class function Create: IPoint;
    class function CreateRemote(const MachineName: string): IPoint;
  end;

// *********************************************************************//
// The Class CoPoints provides a Create and CreateRemote method to          
// create instances of the default interface IPoints exposed by              
// the CoClass Points. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPoints = class
    class function Create: IPoints;
    class function CreateRemote(const MachineName: string): IPoints;
  end;

// *********************************************************************//
// The Class Co_Line provides a Create and CreateRemote method to          
// create instances of the default interface ILine exposed by              
// the CoClass _Line. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Line = class
    class function Create: ILine;
    class function CreateRemote(const MachineName: string): ILine;
  end;

// *********************************************************************//
// The Class CoLines provides a Create and CreateRemote method to          
// create instances of the default interface ILines exposed by              
// the CoClass Lines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLines = class
    class function Create: ILines;
    class function CreateRemote(const MachineName: string): ILines;
  end;

// *********************************************************************//
// The Class Co_Bezier provides a Create and CreateRemote method to          
// create instances of the default interface IBezier exposed by              
// the CoClass _Bezier. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Bezier = class
    class function Create: IBezier;
    class function CreateRemote(const MachineName: string): IBezier;
  end;

// *********************************************************************//
// The Class CoBeziers provides a Create and CreateRemote method to          
// create instances of the default interface IBeziers exposed by              
// the CoClass Beziers. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBeziers = class
    class function Create: IBeziers;
    class function CreateRemote(const MachineName: string): IBeziers;
  end;

// *********************************************************************//
// The Class CoRectangles provides a Create and CreateRemote method to          
// create instances of the default interface IRectangles exposed by              
// the CoClass Rectangles. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRectangles = class
    class function Create: IRectangles;
    class function CreateRemote(const MachineName: string): IRectangles;
  end;

// *********************************************************************//
// The Class Co_Rectangle provides a Create and CreateRemote method to          
// create instances of the default interface IRectangle exposed by              
// the CoClass _Rectangle. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Rectangle = class
    class function Create: IRectangle;
    class function CreateRemote(const MachineName: string): IRectangle;
  end;

// *********************************************************************//
// The Class CoRegularPolygons provides a Create and CreateRemote method to          
// create instances of the default interface IRegularPolygons exposed by              
// the CoClass RegularPolygons. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRegularPolygons = class
    class function Create: IRegularPolygons;
    class function CreateRemote(const MachineName: string): IRegularPolygons;
  end;

// *********************************************************************//
// The Class CoRegularPolygon provides a Create and CreateRemote method to          
// create instances of the default interface IRegularPolygon exposed by              
// the CoClass RegularPolygon. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRegularPolygon = class
    class function Create: IRegularPolygon;
    class function CreateRemote(const MachineName: string): IRegularPolygon;
  end;

// *********************************************************************//
// The Class CoInsertionObjects provides a Create and CreateRemote method to          
// create instances of the default interface IInsertionObjects exposed by              
// the CoClass InsertionObjects. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInsertionObjects = class
    class function Create: IInsertionObjects;
    class function CreateRemote(const MachineName: string): IInsertionObjects;
  end;

// *********************************************************************//
// The Class CoInsertionView provides a Create and CreateRemote method to          
// create instances of the default interface IInsertionView exposed by              
// the CoClass InsertionView. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInsertionView = class
    class function Create: IInsertionView;
    class function CreateRemote(const MachineName: string): IInsertionView;
  end;

// *********************************************************************//
// The Class CoInsertionDefinition provides a Create and CreateRemote method to          
// create instances of the default interface IInsertionDefinition exposed by              
// the CoClass InsertionDefinition. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInsertionDefinition = class
    class function Create: IInsertionDefinition;
    class function CreateRemote(const MachineName: string): IInsertionDefinition;
  end;

// *********************************************************************//
// The Class CoPolyLine2D provides a Create and CreateRemote method to          
// create instances of the default interface IPolyLine2D exposed by              
// the CoClass PolyLine2D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPolyLine2D = class
    class function Create: IPolyLine2D;
    class function CreateRemote(const MachineName: string): IPolyLine2D;
  end;

// *********************************************************************//
// The Class CoPolyLines2D provides a Create and CreateRemote method to          
// create instances of the default interface IPolyLines2D exposed by              
// the CoClass PolyLines2D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPolyLines2D = class
    class function Create: IPolyLines2D;
    class function CreateRemote(const MachineName: string): IPolyLines2D;
  end;

// *********************************************************************//
// The Class CoEquidistants provides a Create and CreateRemote method to          
// create instances of the default interface IEquidistants exposed by              
// the CoClass Equidistants. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoEquidistants = class
    class function Create: IEquidistants;
    class function CreateRemote(const MachineName: string): IEquidistants;
  end;

// *********************************************************************//
// The Class Co_Equidistant provides a Create and CreateRemote method to          
// create instances of the default interface IEquidistant exposed by              
// the CoClass _Equidistant. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Equidistant = class
    class function Create: IEquidistant;
    class function CreateRemote(const MachineName: string): IEquidistant;
  end;

// *********************************************************************//
// The Class Co_Nurbs provides a Create and CreateRemote method to          
// create instances of the default interface INurbs exposed by              
// the CoClass _Nurbs. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Nurbs = class
    class function Create: INurbs;
    class function CreateRemote(const MachineName: string): INurbs;
  end;

// *********************************************************************//
// The Class CoNurbses provides a Create and CreateRemote method to          
// create instances of the default interface INurbses exposed by              
// the CoClass Nurbses. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoNurbses = class
    class function Create: INurbses;
    class function CreateRemote(const MachineName: string): INurbses;
  end;

// *********************************************************************//
// The Class CoCentreMarkers provides a Create and CreateRemote method to          
// create instances of the default interface ICentreMarkers exposed by              
// the CoClass CentreMarkers. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCentreMarkers = class
    class function Create: ICentreMarkers;
    class function CreateRemote(const MachineName: string): ICentreMarkers;
  end;

// *********************************************************************//
// The Class CoCentreMarker provides a Create and CreateRemote method to          
// create instances of the default interface ICentreMarker exposed by              
// the CoClass CentreMarker. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCentreMarker = class
    class function Create: ICentreMarker;
    class function CreateRemote(const MachineName: string): ICentreMarker;
  end;

// *********************************************************************//
// The Class CoRemoteElement provides a Create and CreateRemote method to          
// create instances of the default interface IRemoteElement exposed by              
// the CoClass RemoteElement. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRemoteElement = class
    class function Create: IRemoteElement;
    class function CreateRemote(const MachineName: string): IRemoteElement;
  end;

// *********************************************************************//
// The Class CoRemoteElements provides a Create and CreateRemote method to          
// create instances of the default interface IRemoteElements exposed by              
// the CoClass RemoteElements. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRemoteElements = class
    class function Create: IRemoteElements;
    class function CreateRemote(const MachineName: string): IRemoteElements;
  end;

// *********************************************************************//
// The Class Co_Attribute provides a Create and CreateRemote method to          
// create instances of the default interface IAttribute exposed by              
// the CoClass _Attribute. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Attribute = class
    class function Create: IAttribute;
    class function CreateRemote(const MachineName: string): IAttribute;
  end;

// *********************************************************************//
// The Class Co_ColumnInfo provides a Create and CreateRemote method to          
// create instances of the default interface IColumnInfo exposed by              
// the CoClass _ColumnInfo. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_ColumnInfo = class
    class function Create: IColumnInfo;
    class function CreateRemote(const MachineName: string): IColumnInfo;
  end;

// *********************************************************************//
// The Class Co_AttributeType provides a Create and CreateRemote method to          
// create instances of the default interface IAttributeType exposed by              
// the CoClass _AttributeType. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_AttributeType = class
    class function Create: IAttributeType;
    class function CreateRemote(const MachineName: string): IAttributeType;
  end;

// *********************************************************************//
// The Class CoAxisLine provides a Create and CreateRemote method to          
// create instances of the default interface IAxisLine exposed by              
// the CoClass AxisLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAxisLine = class
    class function Create: IAxisLine;
    class function CreateRemote(const MachineName: string): IAxisLine;
  end;

// *********************************************************************//
// The Class CoAxisLines provides a Create and CreateRemote method to          
// create instances of the default interface IAxisLines exposed by              
// the CoClass AxisLines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoAxisLines = class
    class function Create: IAxisLines;
    class function CreateRemote(const MachineName: string): IAxisLines;
  end;

// *********************************************************************//
// The Class CoVariable7 provides a Create and CreateRemote method to          
// create instances of the default interface IVariable7 exposed by              
// the CoClass Variable7. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoVariable7 = class
    class function Create: IVariable7;
    class function CreateRemote(const MachineName: string): IVariable7;
  end;

// *********************************************************************//
// The Class CoInsertionParameters provides a Create and CreateRemote method to          
// create instances of the default interface IInsertionParameters exposed by              
// the CoClass InsertionParameters. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoInsertionParameters = class
    class function Create: IInsertionParameters;
    class function CreateRemote(const MachineName: string): IInsertionParameters;
  end;

// *********************************************************************//
// The Class CoDrawingGroup provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingGroup exposed by              
// the CoClass DrawingGroup. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingGroup = class
    class function Create: IDrawingGroup;
    class function CreateRemote(const MachineName: string): IDrawingGroup;
  end;

// *********************************************************************//
// The Class CoDrawingGroups provides a Create and CreateRemote method to          
// create instances of the default interface IDrawingGroups exposed by              
// the CoClass DrawingGroups. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoDrawingGroups = class
    class function Create: IDrawingGroups;
    class function CreateRemote(const MachineName: string): IDrawingGroups;
  end;

// *********************************************************************//
// The Class Co_Hatch provides a Create and CreateRemote method to          
// create instances of the default interface IHatch exposed by              
// the CoClass _Hatch. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Hatch = class
    class function Create: IHatch;
    class function CreateRemote(const MachineName: string): IHatch;
  end;

// *********************************************************************//
// The Class Co_Colouring provides a Create and CreateRemote method to          
// create instances of the default interface IColouring exposed by              
// the CoClass _Colouring. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Colouring = class
    class function Create: IColouring;
    class function CreateRemote(const MachineName: string): IColouring;
  end;

// *********************************************************************//
// The Class CoHatches provides a Create and CreateRemote method to          
// create instances of the default interface IHatches exposed by              
// the CoClass Hatches. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoHatches = class
    class function Create: IHatches;
    class function CreateRemote(const MachineName: string): IHatches;
  end;

// *********************************************************************//
// The Class CoColourings provides a Create and CreateRemote method to          
// create instances of the default interface IColourings exposed by              
// the CoClass Colourings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoColourings = class
    class function Create: IColourings;
    class function CreateRemote(const MachineName: string): IColourings;
  end;

// *********************************************************************//
// The Class Co_SpecRough provides a Create and CreateRemote method to          
// create instances of the default interface ISpecRough exposed by              
// the CoClass _SpecRough. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_SpecRough = class
    class function Create: ISpecRough;
    class function CreateRemote(const MachineName: string): ISpecRough;
  end;

// *********************************************************************//
// The Class CoTechnicalDemand provides a Create and CreateRemote method to          
// create instances of the default interface ITechnicalDemand exposed by              
// the CoClass TechnicalDemand. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoTechnicalDemand = class
    class function Create: ITechnicalDemand;
    class function CreateRemote(const MachineName: string): ITechnicalDemand;
  end;

// *********************************************************************//
// The Class Co_Raster provides a Create and CreateRemote method to          
// create instances of the default interface IRaster exposed by              
// the CoClass _Raster. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Raster = class
    class function Create: IRaster;
    class function CreateRemote(const MachineName: string): IRaster;
  end;

// *********************************************************************//
// The Class CoRasters provides a Create and CreateRemote method to          
// create instances of the default interface IRasters exposed by              
// the CoClass Rasters. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoRasters = class
    class function Create: IRasters;
    class function CreateRemote(const MachineName: string): IRasters;
  end;

// *********************************************************************//
// The Class CoOleDrawingObject provides a Create and CreateRemote method to          
// create instances of the default interface IOleDrawingObject exposed by              
// the CoClass OleDrawingObject. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoOleDrawingObject = class
    class function Create: IOleDrawingObject;
    class function CreateRemote(const MachineName: string): IOleDrawingObject;
  end;

// *********************************************************************//
// The Class CoOleDrawingObjects provides a Create and CreateRemote method to          
// create instances of the default interface IOleDrawingObjects exposed by              
// the CoClass OleDrawingObjects. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoOleDrawingObjects = class
    class function Create: IOleDrawingObjects;
    class function CreateRemote(const MachineName: string): IOleDrawingObjects;
  end;

// *********************************************************************//
// The Class CoSelectionManager provides a Create and CreateRemote method to          
// create instances of the default interface ISelectionManager exposed by              
// the CoClass SelectionManager. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSelectionManager = class
    class function Create: ISelectionManager;
    class function CreateRemote(const MachineName: string): ISelectionManager;
  end;

// *********************************************************************//
// The Class CoChooseManager provides a Create and CreateRemote method to          
// create instances of the default interface IChooseManager exposed by              
// the CoClass ChooseManager. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoChooseManager = class
    class function Create: IChooseManager;
    class function CreateRemote(const MachineName: string): IChooseManager;
  end;

// *********************************************************************//
// The Class CoSurfacesIntersectionCurve provides a Create and CreateRemote method to          
// create instances of the default interface ISurfacesIntersectionCurve exposed by              
// the CoClass SurfacesIntersectionCurve. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSurfacesIntersectionCurve = class
    class function Create: ISurfacesIntersectionCurve;
    class function CreateRemote(const MachineName: string): ISurfacesIntersectionCurve;
  end;

// *********************************************************************//
// The Class CoSurfacesIntersectionCurves provides a Create and CreateRemote method to          
// create instances of the default interface ISurfacesIntersectionCurves exposed by              
// the CoClass SurfacesIntersectionCurves. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoSurfacesIntersectionCurves = class
    class function Create: ISurfacesIntersectionCurves;
    class function CreateRemote(const MachineName: string): ISurfacesIntersectionCurves;
  end;

// *********************************************************************//
// The Class Co_Stamp provides a Create and CreateRemote method to          
// create instances of the default interface IStamp exposed by              
// the CoClass _Stamp. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Stamp = class
    class function Create: IStamp;
    class function CreateRemote(const MachineName: string): IStamp;
  end;

// *********************************************************************//
// The Class CoWaveLine provides a Create and CreateRemote method to          
// create instances of the default interface IWaveLine exposed by              
// the CoClass WaveLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoWaveLine = class
    class function Create: IWaveLine;
    class function CreateRemote(const MachineName: string): IWaveLine;
  end;

// *********************************************************************//
// The Class CoWaveLines provides a Create and CreateRemote method to          
// create instances of the default interface IWaveLines exposed by              
// the CoClass WaveLines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoWaveLines = class
    class function Create: IWaveLines;
    class function CreateRemote(const MachineName: string): IWaveLines;
  end;

// *********************************************************************//
// The Class CoBrokenLine provides a Create and CreateRemote method to          
// create instances of the default interface IBrokenLine exposed by              
// the CoClass BrokenLine. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBrokenLine = class
    class function Create: IBrokenLine;
    class function CreateRemote(const MachineName: string): IBrokenLine;
  end;

// *********************************************************************//
// The Class CoBrokenLines provides a Create and CreateRemote method to          
// create instances of the default interface IBrokenLines exposed by              
// the CoClass BrokenLines. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoBrokenLines = class
    class function Create: IBrokenLines;
    class function CreateRemote(const MachineName: string): IBrokenLines;
  end;

// *********************************************************************//
// The Class CoPropertyStyleList provides a Create and CreateRemote method to          
// create instances of the default interface IPropertyStyleList exposed by              
// the CoClass PropertyStyleList. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPropertyStyleList = class
    class function Create: IPropertyStyleList;
    class function CreateRemote(const MachineName: string): IPropertyStyleList;
  end;

// *********************************************************************//
// The Class Co_CopyObjectParam provides a Create and CreateRemote method to          
// create instances of the default interface ICopyObjectParam exposed by              
// the CoClass _CopyObjectParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_CopyObjectParam = class
    class function Create: ICopyObjectParam;
    class function CreateRemote(const MachineName: string): ICopyObjectParam;
  end;

// *********************************************************************//
// The Class CoCurveCopyObjectParam provides a Create and CreateRemote method to          
// create instances of the default interface ICurveCopyObjectParam exposed by              
// the CoClass CurveCopyObjectParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCurveCopyObjectParam = class
    class function Create: ICurveCopyObjectParam;
    class function CreateRemote(const MachineName: string): ICurveCopyObjectParam;
  end;

// *********************************************************************//
// The Class CoCircleCopyObjectParam provides a Create and CreateRemote method to          
// create instances of the default interface ICircleCopyObjectParam exposed by              
// the CoClass CircleCopyObjectParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCircleCopyObjectParam = class
    class function Create: ICircleCopyObjectParam;
    class function CreateRemote(const MachineName: string): ICircleCopyObjectParam;
  end;

// *********************************************************************//
// The Class CoCircularCopyObjectParam provides a Create and CreateRemote method to          
// create instances of the default interface ICircularCopyObjectParam exposed by              
// the CoClass CircularCopyObjectParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoCircularCopyObjectParam = class
    class function Create: ICircularCopyObjectParam;
    class function CreateRemote(const MachineName: string): ICircularCopyObjectParam;
  end;

// *********************************************************************//
// The Class CoMeshCopyObjectParam provides a Create and CreateRemote method to          
// create instances of the default interface IMeshCopyObjectParam exposed by              
// the CoClass MeshCopyObjectParam. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoMeshCopyObjectParam = class
    class function Create: IMeshCopyObjectParam;
    class function CreateRemote(const MachineName: string): IMeshCopyObjectParam;
  end;

// *********************************************************************//
// The Class CoPrintJob provides a Create and CreateRemote method to          
// create instances of the default interface IPrintJob exposed by              
// the CoClass PrintJob. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPrintJob = class
    class function Create: IPrintJob;
    class function CreateRemote(const MachineName: string): IPrintJob;
  end;

// *********************************************************************//
// The Class CoPrintJob_Sheet provides a Create and CreateRemote method to          
// create instances of the default interface IPrintJob_Sheet exposed by              
// the CoClass PrintJob_Sheet. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoPrintJob_Sheet = class
    class function Create: IPrintJob_Sheet;
    class function CreateRemote(const MachineName: string): IPrintJob_Sheet;
  end;

// *********************************************************************//
// The Class Co_Property provides a Create and CreateRemote method to          
// create instances of the default interface IProperty exposed by              
// the CoClass _Property. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  Co_Property = class
    class function Create: IProperty;
    class function CreateRemote(const MachineName: string): IProperty;
  end;

// *********************************************************************//
// The Class CoLibArraySettings provides a Create and CreateRemote method to          
// create instances of the default interface ILibArraySettings exposed by              
// the CoClass LibArraySettings. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoLibArraySettings = class
    class function Create: ILibArraySettings;
    class function CreateRemote(const MachineName: string): ILibArraySettings;
  end;

// *********************************************************************//
// The Class CoReportProcess provides a Create and CreateRemote method to          
// create instances of the default interface IReportProcess exposed by              
// the CoClass ReportProcess. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoReportProcess = class
    class function Create: IReportProcess;
    class function CreateRemote(const MachineName: string): IReportProcess;
  end;

// *********************************************************************//
// The Class CoEquidistants3D provides a Create and CreateRemote method to          
// create instances of the default interface IEquidistants3D exposed by              
// the CoClass Equidistants3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoEquidistants3D = class
    class function Create: IEquidistants3D;
    class function CreateRemote(const MachineName: string): IEquidistants3D;
  end;

// *********************************************************************//
// The Class CoEquidistant3D provides a Create and CreateRemote method to          
// create instances of the default interface IEquidistant3D exposed by              
// the CoClass Equidistant3D. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of this typelibrary.                                            
// *********************************************************************//
  CoEquidistant3D = class
    class function Create: IEquidistant3D;
    class function CreateRemote(const MachineName: string): IEquidistant3D;
  end;

implementation

uses ComObj;

class function CoKompasDocument.Create: IKompasDocument;
begin
  Result := CreateComObject(CLASS_KompasDocument) as IKompasDocument;
end;

class function CoKompasDocument.CreateRemote(const MachineName: string): IKompasDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_KompasDocument) as IKompasDocument;
end;

class function Co_Application.Create: IApplication;
begin
  Result := CreateComObject(CLASS__Application) as IApplication;
end;

class function Co_Application.CreateRemote(const MachineName: string): IApplication;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Application) as IApplication;
end;

class function CoDocuments.Create: IDocuments;
begin
  Result := CreateComObject(CLASS_Documents) as IDocuments;
end;

class function CoDocuments.CreateRemote(const MachineName: string): IDocuments;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Documents) as IDocuments;
end;

class function CoDocumentFrame.Create: IDocumentFrame;
begin
  Result := CreateComObject(CLASS_DocumentFrame) as IDocumentFrame;
end;

class function CoDocumentFrame.CreateRemote(const MachineName: string): IDocumentFrame;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DocumentFrame) as IDocumentFrame;
end;

class function CoDocumentFrames.Create: IDocumentFrames;
begin
  Result := CreateComObject(CLASS_DocumentFrames) as IDocumentFrames;
end;

class function CoDocumentFrames.CreateRemote(const MachineName: string): IDocumentFrames;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DocumentFrames) as IDocumentFrames;
end;

class function CoProcessParam.Create: IProcessParam;
begin
  Result := CreateComObject(CLASS_ProcessParam) as IProcessParam;
end;

class function CoProcessParam.CreateRemote(const MachineName: string): IProcessParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ProcessParam) as IProcessParam;
end;

class function CoPropertyControls.Create: IPropertyControls;
begin
  Result := CreateComObject(CLASS_PropertyControls) as IPropertyControls;
end;

class function CoPropertyControls.CreateRemote(const MachineName: string): IPropertyControls;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyControls) as IPropertyControls;
end;

class function CoPropertyTab.Create: IPropertyTab;
begin
  Result := CreateComObject(CLASS_PropertyTab) as IPropertyTab;
end;

class function CoPropertyTab.CreateRemote(const MachineName: string): IPropertyTab;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyTab) as IPropertyTab;
end;

class function CoPropertyTabs.Create: IPropertyTabs;
begin
  Result := CreateComObject(CLASS_PropertyTabs) as IPropertyTabs;
end;

class function CoPropertyTabs.CreateRemote(const MachineName: string): IPropertyTabs;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyTabs) as IPropertyTabs;
end;

class function CoPropertyEdit.Create: IPropertyEdit;
begin
  Result := CreateComObject(CLASS_PropertyEdit) as IPropertyEdit;
end;

class function CoPropertyEdit.CreateRemote(const MachineName: string): IPropertyEdit;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyEdit) as IPropertyEdit;
end;

class function CoPropertySeparator.Create: IPropertySeparator;
begin
  Result := CreateComObject(CLASS_PropertySeparator) as IPropertySeparator;
end;

class function CoPropertySeparator.CreateRemote(const MachineName: string): IPropertySeparator;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertySeparator) as IPropertySeparator;
end;

class function CoPropertyList.Create: IPropertyList;
begin
  Result := CreateComObject(CLASS_PropertyList) as IPropertyList;
end;

class function CoPropertyList.CreateRemote(const MachineName: string): IPropertyList;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyList) as IPropertyList;
end;

class function CoPropertyCheckBox.Create: IPropertyCheckBox;
begin
  Result := CreateComObject(CLASS_PropertyCheckBox) as IPropertyCheckBox;
end;

class function CoPropertyCheckBox.CreateRemote(const MachineName: string): IPropertyCheckBox;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyCheckBox) as IPropertyCheckBox;
end;

class function CoPropertyMultiButton.Create: IPropertyMultiButton;
begin
  Result := CreateComObject(CLASS_PropertyMultiButton) as IPropertyMultiButton;
end;

class function CoPropertyMultiButton.CreateRemote(const MachineName: string): IPropertyMultiButton;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyMultiButton) as IPropertyMultiButton;
end;

class function CoPropertySlideBox.Create: IPropertySlideBox;
begin
  Result := CreateComObject(CLASS_PropertySlideBox) as IPropertySlideBox;
end;

class function CoPropertySlideBox.CreateRemote(const MachineName: string): IPropertySlideBox;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertySlideBox) as IPropertySlideBox;
end;

class function CoPropertyUserControl.Create: IPropertyUserControl;
begin
  Result := CreateComObject(CLASS_PropertyUserControl) as IPropertyUserControl;
end;

class function CoPropertyUserControl.CreateRemote(const MachineName: string): IPropertyUserControl;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyUserControl) as IPropertyUserControl;
end;

class function CoPropertyGrid.Create: IPropertyGrid;
begin
  Result := CreateComObject(CLASS_PropertyGrid) as IPropertyGrid;
end;

class function CoPropertyGrid.CreateRemote(const MachineName: string): IPropertyGrid;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyGrid) as IPropertyGrid;
end;

class function CoPropertyManager.Create: IPropertyManager;
begin
  Result := CreateComObject(CLASS_PropertyManager) as IPropertyManager;
end;

class function CoPropertyManager.CreateRemote(const MachineName: string): IPropertyManager;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyManager) as IPropertyManager;
end;

class function CoKompasDocument3D.Create: IKompasDocument3D;
begin
  Result := CreateComObject(CLASS_KompasDocument3D) as IKompasDocument3D;
end;

class function CoKompasDocument3D.CreateRemote(const MachineName: string): IKompasDocument3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_KompasDocument3D) as IKompasDocument3D;
end;

class function CoDrawingDocument.Create: IDrawingDocument;
begin
  Result := CreateComObject(CLASS_DrawingDocument) as IDrawingDocument;
end;

class function CoDrawingDocument.CreateRemote(const MachineName: string): IDrawingDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingDocument) as IDrawingDocument;
end;

class function CoFragmentDocument.Create: IFragmentDocument;
begin
  Result := CreateComObject(CLASS_FragmentDocument) as IFragmentDocument;
end;

class function CoFragmentDocument.CreateRemote(const MachineName: string): IFragmentDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_FragmentDocument) as IFragmentDocument;
end;

class function CoSpecificationDocument.Create: ISpecificationDocument;
begin
  Result := CreateComObject(CLASS_SpecificationDocument) as ISpecificationDocument;
end;

class function CoSpecificationDocument.CreateRemote(const MachineName: string): ISpecificationDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationDocument) as ISpecificationDocument;
end;

class function CoTextDocument.Create: ITextDocument;
begin
  Result := CreateComObject(CLASS_TextDocument) as ITextDocument;
end;

class function CoTextDocument.CreateRemote(const MachineName: string): ITextDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_TextDocument) as ITextDocument;
end;

class function CoPartDocument.Create: IPartDocument;
begin
  Result := CreateComObject(CLASS_PartDocument) as IPartDocument;
end;

class function CoPartDocument.CreateRemote(const MachineName: string): IPartDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PartDocument) as IPartDocument;
end;

class function CoAssemblyDocument.Create: IAssemblyDocument;
begin
  Result := CreateComObject(CLASS_AssemblyDocument) as IAssemblyDocument;
end;

class function CoAssemblyDocument.CreateRemote(const MachineName: string): IAssemblyDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AssemblyDocument) as IAssemblyDocument;
end;

class function CoPropertyTextButton.Create: IPropertyTextButton;
begin
  Result := CreateComObject(CLASS_PropertyTextButton) as IPropertyTextButton;
end;

class function CoPropertyTextButton.CreateRemote(const MachineName: string): IPropertyTextButton;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyTextButton) as IPropertyTextButton;
end;

class function CoPropertySpinEdit.Create: IPropertySpinEdit;
begin
  Result := CreateComObject(CLASS_PropertySpinEdit) as IPropertySpinEdit;
end;

class function CoPropertySpinEdit.CreateRemote(const MachineName: string): IPropertySpinEdit;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertySpinEdit) as IPropertySpinEdit;
end;

class function CoViewsAndLayersManager.Create: IViewsAndLayersManager;
begin
  Result := CreateComObject(CLASS_ViewsAndLayersManager) as IViewsAndLayersManager;
end;

class function CoViewsAndLayersManager.CreateRemote(const MachineName: string): IViewsAndLayersManager;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ViewsAndLayersManager) as IViewsAndLayersManager;
end;

class function CoDrawingObject.Create: IDrawingObject;
begin
  Result := CreateComObject(CLASS_DrawingObject) as IDrawingObject;
end;

class function CoDrawingObject.CreateRemote(const MachineName: string): IDrawingObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingObject) as IDrawingObject;
end;

class function CoDrawingObjects.Create: IDrawingObjects;
begin
  Result := CreateComObject(CLASS_DrawingObjects) as IDrawingObjects;
end;

class function CoDrawingObjects.CreateRemote(const MachineName: string): IDrawingObjects;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingObjects) as IDrawingObjects;
end;

class function CoViews.Create: IViews;
begin
  Result := CreateComObject(CLASS_Views) as IViews;
end;

class function CoViews.CreateRemote(const MachineName: string): IViews;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Views) as IViews;
end;

class function CoView.Create: IView;
begin
  Result := CreateComObject(CLASS_View) as IView;
end;

class function CoView.CreateRemote(const MachineName: string): IView;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_View) as IView;
end;

class function CoAssociationView.Create: IAssociationView;
begin
  Result := CreateComObject(CLASS_AssociationView) as IAssociationView;
end;

class function CoAssociationView.CreateRemote(const MachineName: string): IAssociationView;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AssociationView) as IAssociationView;
end;

class function CoLayerGroups.Create: ILayerGroups;
begin
  Result := CreateComObject(CLASS_LayerGroups) as ILayerGroups;
end;

class function CoLayerGroups.CreateRemote(const MachineName: string): ILayerGroups;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LayerGroups) as ILayerGroups;
end;

class function CoLayerGroup.Create: ILayerGroup;
begin
  Result := CreateComObject(CLASS_LayerGroup) as ILayerGroup;
end;

class function CoLayerGroup.CreateRemote(const MachineName: string): ILayerGroup;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LayerGroup) as ILayerGroup;
end;

class function CoLayers.Create: ILayers;
begin
  Result := CreateComObject(CLASS_Layers) as ILayers;
end;

class function CoLayers.CreateRemote(const MachineName: string): ILayers;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Layers) as ILayers;
end;

class function CoLayer.Create: ILayer;
begin
  Result := CreateComObject(CLASS_Layer) as ILayer;
end;

class function CoLayer.CreateRemote(const MachineName: string): ILayer;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Layer) as ILayer;
end;

class function CoLayerFilterCondition.Create: ILayerFilterCondition;
begin
  Result := CreateComObject(CLASS_LayerFilterCondition) as ILayerFilterCondition;
end;

class function CoLayerFilterCondition.CreateRemote(const MachineName: string): ILayerFilterCondition;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LayerFilterCondition) as ILayerFilterCondition;
end;

class function CoLayerFilterConditions.Create: ILayerFilterConditions;
begin
  Result := CreateComObject(CLASS_LayerFilterConditions) as ILayerFilterConditions;
end;

class function CoLayerFilterConditions.CreateRemote(const MachineName: string): ILayerFilterConditions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LayerFilterConditions) as ILayerFilterConditions;
end;

class function CoDocumentSettings.Create: IDocumentSettings;
begin
  Result := CreateComObject(CLASS_DocumentSettings) as IDocumentSettings;
end;

class function CoDocumentSettings.CreateRemote(const MachineName: string): IDocumentSettings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DocumentSettings) as IDocumentSettings;
end;

class function CoDocument2DSettings.Create: IDocument2DSettings;
begin
  Result := CreateComObject(CLASS_Document2DSettings) as IDocument2DSettings;
end;

class function CoDocument2DSettings.CreateRemote(const MachineName: string): IDocument2DSettings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Document2DSettings) as IDocument2DSettings;
end;

class function CoLibraryManager.Create: ILibraryManager;
begin
  Result := CreateComObject(CLASS_LibraryManager) as ILibraryManager;
end;

class function CoLibraryManager.CreateRemote(const MachineName: string): ILibraryManager;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LibraryManager) as ILibraryManager;
end;

class function CoProceduresLibrary.Create: IProceduresLibrary;
begin
  Result := CreateComObject(CLASS_ProceduresLibrary) as IProceduresLibrary;
end;

class function CoProceduresLibrary.CreateRemote(const MachineName: string): IProceduresLibrary;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ProceduresLibrary) as IProceduresLibrary;
end;

class function CoProcedures.Create: IProcedures;
begin
  Result := CreateComObject(CLASS_Procedures) as IProcedures;
end;

class function CoProcedures.CreateRemote(const MachineName: string): IProcedures;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Procedures) as IProcedures;
end;

class function CoProcedure_.Create: IProcedure;
begin
  Result := CreateComObject(CLASS_Procedure_) as IProcedure;
end;

class function CoProcedure_.CreateRemote(const MachineName: string): IProcedure;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Procedure_) as IProcedure;
end;

class function CoInsertsLibrary.Create: IInsertsLibrary;
begin
  Result := CreateComObject(CLASS_InsertsLibrary) as IInsertsLibrary;
end;

class function CoInsertsLibrary.CreateRemote(const MachineName: string): IInsertsLibrary;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_InsertsLibrary) as IInsertsLibrary;
end;

class function CoInserts.Create: IInserts;
begin
  Result := CreateComObject(CLASS_Inserts) as IInserts;
end;

class function CoInserts.CreateRemote(const MachineName: string): IInserts;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Inserts) as IInserts;
end;

class function CoInsert.Create: IInsert;
begin
  Result := CreateComObject(CLASS_Insert) as IInsert;
end;

class function CoInsert.CreateRemote(const MachineName: string): IInsert;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Insert) as IInsert;
end;

class function CoInsertsLibraries.Create: IInsertsLibraries;
begin
  Result := CreateComObject(CLASS_InsertsLibraries) as IInsertsLibraries;
end;

class function CoInsertsLibraries.CreateRemote(const MachineName: string): IInsertsLibraries;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_InsertsLibraries) as IInsertsLibraries;
end;

class function CoProceduresLibraries.Create: IProceduresLibraries;
begin
  Result := CreateComObject(CLASS_ProceduresLibraries) as IProceduresLibraries;
end;

class function CoProceduresLibraries.CreateRemote(const MachineName: string): IProceduresLibraries;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ProceduresLibraries) as IProceduresLibraries;
end;

class function CoSpecificationDescriptions.Create: ISpecificationDescriptions;
begin
  Result := CreateComObject(CLASS_SpecificationDescriptions) as ISpecificationDescriptions;
end;

class function CoSpecificationDescriptions.CreateRemote(const MachineName: string): ISpecificationDescriptions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationDescriptions) as ISpecificationDescriptions;
end;

class function CoSpecificationDescription.Create: ISpecificationDescription;
begin
  Result := CreateComObject(CLASS_SpecificationDescription) as ISpecificationDescription;
end;

class function CoSpecificationDescription.CreateRemote(const MachineName: string): ISpecificationDescription;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationDescription) as ISpecificationDescription;
end;

class function CoSpecificationStyle.Create: ISpecificationStyle;
begin
  Result := CreateComObject(CLASS_SpecificationStyle) as ISpecificationStyle;
end;

class function CoSpecificationStyle.CreateRemote(const MachineName: string): ISpecificationStyle;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationStyle) as ISpecificationStyle;
end;

class function CoSpecificationColumnStyles.Create: ISpecificationColumnStyles;
begin
  Result := CreateComObject(CLASS_SpecificationColumnStyles) as ISpecificationColumnStyles;
end;

class function CoSpecificationColumnStyles.CreateRemote(const MachineName: string): ISpecificationColumnStyles;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationColumnStyles) as ISpecificationColumnStyles;
end;

class function CoSpecificationColumnStyle.Create: ISpecificationColumnStyle;
begin
  Result := CreateComObject(CLASS_SpecificationColumnStyle) as ISpecificationColumnStyle;
end;

class function CoSpecificationColumnStyle.CreateRemote(const MachineName: string): ISpecificationColumnStyle;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationColumnStyle) as ISpecificationColumnStyle;
end;

class function CoSpecificationSectionStyles.Create: ISpecificationSectionStyles;
begin
  Result := CreateComObject(CLASS_SpecificationSectionStyles) as ISpecificationSectionStyles;
end;

class function CoSpecificationSectionStyles.CreateRemote(const MachineName: string): ISpecificationSectionStyles;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationSectionStyles) as ISpecificationSectionStyles;
end;

class function CoSpecificationSectionStyle.Create: ISpecificationSectionStyle;
begin
  Result := CreateComObject(CLASS_SpecificationSectionStyle) as ISpecificationSectionStyle;
end;

class function CoSpecificationSectionStyle.CreateRemote(const MachineName: string): ISpecificationSectionStyle;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationSectionStyle) as ISpecificationSectionStyle;
end;

class function CoAdditionalBlockStyles.Create: IAdditionalBlockStyles;
begin
  Result := CreateComObject(CLASS_AdditionalBlockStyles) as IAdditionalBlockStyles;
end;

class function CoAdditionalBlockStyles.CreateRemote(const MachineName: string): IAdditionalBlockStyles;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AdditionalBlockStyles) as IAdditionalBlockStyles;
end;

class function CoAdditionalBlockStyle.Create: IAdditionalBlockStyle;
begin
  Result := CreateComObject(CLASS_AdditionalBlockStyle) as IAdditionalBlockStyle;
end;

class function CoAdditionalBlockStyle.CreateRemote(const MachineName: string): IAdditionalBlockStyle;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AdditionalBlockStyle) as IAdditionalBlockStyle;
end;

class function CoSheetFormat.Create: ISheetFormat;
begin
  Result := CreateComObject(CLASS_SheetFormat) as ISheetFormat;
end;

class function CoSheetFormat.CreateRemote(const MachineName: string): ISheetFormat;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetFormat) as ISheetFormat;
end;

class function CoSpecificationTuning.Create: ISpecificationTuning;
begin
  Result := CreateComObject(CLASS_SpecificationTuning) as ISpecificationTuning;
end;

class function CoSpecificationTuning.CreateRemote(const MachineName: string): ISpecificationTuning;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationTuning) as ISpecificationTuning;
end;

class function CoSpecificationTuningSections.Create: ISpecificationTuningSections;
begin
  Result := CreateComObject(CLASS_SpecificationTuningSections) as ISpecificationTuningSections;
end;

class function CoSpecificationTuningSections.CreateRemote(const MachineName: string): ISpecificationTuningSections;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationTuningSections) as ISpecificationTuningSections;
end;

class function CoSpecificationTuningSection.Create: ISpecificationTuningSection;
begin
  Result := CreateComObject(CLASS_SpecificationTuningSection) as ISpecificationTuningSection;
end;

class function CoSpecificationTuningSection.CreateRemote(const MachineName: string): ISpecificationTuningSection;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationTuningSection) as ISpecificationTuningSection;
end;

class function CoSpecificationSubsections.Create: ISpecificationSubsections;
begin
  Result := CreateComObject(CLASS_SpecificationSubsections) as ISpecificationSubsections;
end;

class function CoSpecificationSubsections.CreateRemote(const MachineName: string): ISpecificationSubsections;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationSubsections) as ISpecificationSubsections;
end;

class function CoSpecificationSubsection.Create: ISpecificationSubsection;
begin
  Result := CreateComObject(CLASS_SpecificationSubsection) as ISpecificationSubsection;
end;

class function CoSpecificationSubsection.CreateRemote(const MachineName: string): ISpecificationSubsection;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationSubsection) as ISpecificationSubsection;
end;

class function CoAdditionalBlockTunings.Create: IAdditionalBlockTunings;
begin
  Result := CreateComObject(CLASS_AdditionalBlockTunings) as IAdditionalBlockTunings;
end;

class function CoAdditionalBlockTunings.CreateRemote(const MachineName: string): IAdditionalBlockTunings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AdditionalBlockTunings) as IAdditionalBlockTunings;
end;

class function CoAdditionalBlockTuning.Create: IAdditionalBlockTuning;
begin
  Result := CreateComObject(CLASS_AdditionalBlockTuning) as IAdditionalBlockTuning;
end;

class function CoAdditionalBlockTuning.CreateRemote(const MachineName: string): IAdditionalBlockTuning;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AdditionalBlockTuning) as IAdditionalBlockTuning;
end;

class function CoAdditionalBlockSectionTunings.Create: IAdditionalBlockSectionTunings;
begin
  Result := CreateComObject(CLASS_AdditionalBlockSectionTunings) as IAdditionalBlockSectionTunings;
end;

class function CoAdditionalBlockSectionTunings.CreateRemote(const MachineName: string): IAdditionalBlockSectionTunings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AdditionalBlockSectionTunings) as IAdditionalBlockSectionTunings;
end;

class function CoAdditionalBlockSectionTuning.Create: IAdditionalBlockSectionTuning;
begin
  Result := CreateComObject(CLASS_AdditionalBlockSectionTuning) as IAdditionalBlockSectionTuning;
end;

class function CoAdditionalBlockSectionTuning.CreateRemote(const MachineName: string): IAdditionalBlockSectionTuning;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AdditionalBlockSectionTuning) as IAdditionalBlockSectionTuning;
end;

class function CoTextFont.Create: ITextFont;
begin
  Result := CreateComObject(CLASS_TextFont) as ITextFont;
end;

class function CoTextFont.CreateRemote(const MachineName: string): ITextFont;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_TextFont) as ITextFont;
end;

class function CoTextStyle.Create: ITextStyle;
begin
  Result := CreateComObject(CLASS_TextStyle) as ITextStyle;
end;

class function CoTextStyle.CreateRemote(const MachineName: string): ITextStyle;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_TextStyle) as ITextStyle;
end;

class function CoTabulators.Create: ITabulators;
begin
  Result := CreateComObject(CLASS_Tabulators) as ITabulators;
end;

class function CoTabulators.CreateRemote(const MachineName: string): ITabulators;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Tabulators) as ITabulators;
end;

class function CoTabulator.Create: ITabulator;
begin
  Result := CreateComObject(CLASS_Tabulator) as ITabulator;
end;

class function CoTabulator.CreateRemote(const MachineName: string): ITabulator;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Tabulator) as ITabulator;
end;

class function CoKompasError.Create: IKompasError;
begin
  Result := CreateComObject(CLASS_KompasError) as IKompasError;
end;

class function CoKompasError.CreateRemote(const MachineName: string): IKompasError;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_KompasError) as IKompasError;
end;

class function CoSpecificationBaseObjects.Create: ISpecificationBaseObjects;
begin
  Result := CreateComObject(CLASS_SpecificationBaseObjects) as ISpecificationBaseObjects;
end;

class function CoSpecificationBaseObjects.CreateRemote(const MachineName: string): ISpecificationBaseObjects;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationBaseObjects) as ISpecificationBaseObjects;
end;

class function CoSpecificationCommentObjects.Create: ISpecificationCommentObjects;
begin
  Result := CreateComObject(CLASS_SpecificationCommentObjects) as ISpecificationCommentObjects;
end;

class function CoSpecificationCommentObjects.CreateRemote(const MachineName: string): ISpecificationCommentObjects;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationCommentObjects) as ISpecificationCommentObjects;
end;

class function CoSpecificationObject.Create: ISpecificationObject;
begin
  Result := CreateComObject(CLASS_SpecificationObject) as ISpecificationObject;
end;

class function CoSpecificationObject.CreateRemote(const MachineName: string): ISpecificationObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationObject) as ISpecificationObject;
end;

class function CoSpecificationBaseObject.Create: ISpecificationBaseObject;
begin
  Result := CreateComObject(CLASS_SpecificationBaseObject) as ISpecificationBaseObject;
end;

class function CoSpecificationBaseObject.CreateRemote(const MachineName: string): ISpecificationBaseObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationBaseObject) as ISpecificationBaseObject;
end;

class function CoSpecificationCommentObject.Create: ISpecificationCommentObject;
begin
  Result := CreateComObject(CLASS_SpecificationCommentObject) as ISpecificationCommentObject;
end;

class function CoSpecificationCommentObject.CreateRemote(const MachineName: string): ISpecificationCommentObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationCommentObject) as ISpecificationCommentObject;
end;

class function CoSpecificationColumns.Create: ISpecificationColumns;
begin
  Result := CreateComObject(CLASS_SpecificationColumns) as ISpecificationColumns;
end;

class function CoSpecificationColumns.CreateRemote(const MachineName: string): ISpecificationColumns;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationColumns) as ISpecificationColumns;
end;

class function CoSpecificationColumn.Create: ISpecificationColumn;
begin
  Result := CreateComObject(CLASS_SpecificationColumn) as ISpecificationColumn;
end;

class function CoSpecificationColumn.CreateRemote(const MachineName: string): ISpecificationColumn;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationColumn) as ISpecificationColumn;
end;

class function CoSpecificationColumnItems.Create: ISpecificationColumnItems;
begin
  Result := CreateComObject(CLASS_SpecificationColumnItems) as ISpecificationColumnItems;
end;

class function CoSpecificationColumnItems.CreateRemote(const MachineName: string): ISpecificationColumnItems;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationColumnItems) as ISpecificationColumnItems;
end;

class function CoSpecificationColumnItem.Create: ISpecificationColumnItem;
begin
  Result := CreateComObject(CLASS_SpecificationColumnItem) as ISpecificationColumnItem;
end;

class function CoSpecificationColumnItem.CreateRemote(const MachineName: string): ISpecificationColumnItem;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SpecificationColumnItem) as ISpecificationColumnItem;
end;

class function CoAttachedDocuments.Create: IAttachedDocuments;
begin
  Result := CreateComObject(CLASS_AttachedDocuments) as IAttachedDocuments;
end;

class function CoAttachedDocuments.CreateRemote(const MachineName: string): IAttachedDocuments;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AttachedDocuments) as IAttachedDocuments;
end;

class function CoAttachedDocument.Create: IAttachedDocument;
begin
  Result := CreateComObject(CLASS_AttachedDocument) as IAttachedDocument;
end;

class function CoAttachedDocument.CreateRemote(const MachineName: string): IAttachedDocument;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AttachedDocument) as IAttachedDocument;
end;

class function CoPropertyFileName.Create: IPropertyFileName;
begin
  Result := CreateComObject(CLASS_PropertyFileName) as IPropertyFileName;
end;

class function CoPropertyFileName.CreateRemote(const MachineName: string): IPropertyFileName;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyFileName) as IPropertyFileName;
end;

class function CoPropertyColor.Create: IPropertyColor;
begin
  Result := CreateComObject(CLASS_PropertyColor) as IPropertyColor;
end;

class function CoPropertyColor.CreateRemote(const MachineName: string): IPropertyColor;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyColor) as IPropertyColor;
end;

class function CoLayoutSheets.Create: ILayoutSheets;
begin
  Result := CreateComObject(CLASS_LayoutSheets) as ILayoutSheets;
end;

class function CoLayoutSheets.CreateRemote(const MachineName: string): ILayoutSheets;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LayoutSheets) as ILayoutSheets;
end;

class function CoLayoutSheet.Create: ILayoutSheet;
begin
  Result := CreateComObject(CLASS_LayoutSheet) as ILayoutSheet;
end;

class function CoLayoutSheet.CreateRemote(const MachineName: string): ILayoutSheet;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LayoutSheet) as ILayoutSheet;
end;

class function CoConverter.Create: IConverter;
begin
  Result := CreateComObject(CLASS_Converter) as IConverter;
end;

class function CoConverter.CreateRemote(const MachineName: string): IConverter;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Converter) as IConverter;
end;

class function CoCheckSum.Create: ICheckSum;
begin
  Result := CreateComObject(CLASS_CheckSum) as ICheckSum;
end;

class function CoCheckSum.CreateRemote(const MachineName: string): ICheckSum;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CheckSum) as ICheckSum;
end;

class function CoModelObject.Create: IModelObject;
begin
  Result := CreateComObject(CLASS_ModelObject) as IModelObject;
end;

class function CoModelObject.CreateRemote(const MachineName: string): IModelObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ModelObject) as IModelObject;
end;

class function CoModelObjects.Create: IModelObjects;
begin
  Result := CreateComObject(CLASS_ModelObjects) as IModelObjects;
end;

class function CoModelObjects.CreateRemote(const MachineName: string): IModelObjects;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ModelObjects) as IModelObjects;
end;

class function CoParts7.Create: IParts7;
begin
  Result := CreateComObject(CLASS_Parts7) as IParts7;
end;

class function CoParts7.CreateRemote(const MachineName: string): IParts7;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Parts7) as IParts7;
end;

class function CoPart7.Create: IPart7;
begin
  Result := CreateComObject(CLASS_Part7) as IPart7;
end;

class function CoPart7.CreateRemote(const MachineName: string): IPart7;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Part7) as IPart7;
end;

class function CoSketchs.Create: ISketchs;
begin
  Result := CreateComObject(CLASS_Sketchs) as ISketchs;
end;

class function CoSketchs.CreateRemote(const MachineName: string): ISketchs;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Sketchs) as ISketchs;
end;

class function CoExtrusions.Create: IExtrusions;
begin
  Result := CreateComObject(CLASS_Extrusions) as IExtrusions;
end;

class function CoExtrusions.CreateRemote(const MachineName: string): IExtrusions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Extrusions) as IExtrusions;
end;

class function CoVariableTable.Create: IVariableTable;
begin
  Result := CreateComObject(CLASS_VariableTable) as IVariableTable;
end;

class function CoVariableTable.CreateRemote(const MachineName: string): IVariableTable;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_VariableTable) as IVariableTable;
end;

class function CoProgressBarIndicator.Create: IProgressBarIndicator;
begin
  Result := CreateComObject(CLASS_ProgressBarIndicator) as IProgressBarIndicator;
end;

class function CoProgressBarIndicator.CreateRemote(const MachineName: string): IProgressBarIndicator;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ProgressBarIndicator) as IProgressBarIndicator;
end;

class function CoText.Create: IText;
begin
  Result := CreateComObject(CLASS_Text) as IText;
end;

class function CoText.CreateRemote(const MachineName: string): IText;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Text) as IText;
end;

class function CoTextLine.Create: ITextLine;
begin
  Result := CreateComObject(CLASS_TextLine) as ITextLine;
end;

class function CoTextLine.CreateRemote(const MachineName: string): ITextLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_TextLine) as ITextLine;
end;

class function CoTextItem.Create: ITextItem;
begin
  Result := CreateComObject(CLASS_TextItem) as ITextItem;
end;

class function CoTextItem.CreateRemote(const MachineName: string): ITextItem;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_TextItem) as ITextItem;
end;

class function CoDrawingText.Create: IDrawingText;
begin
  Result := CreateComObject(CLASS_DrawingText) as IDrawingText;
end;

class function CoDrawingText.CreateRemote(const MachineName: string): IDrawingText;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingText) as IDrawingText;
end;

class function CoDrawingTexts.Create: IDrawingTexts;
begin
  Result := CreateComObject(CLASS_DrawingTexts) as IDrawingTexts;
end;

class function CoDrawingTexts.CreateRemote(const MachineName: string): IDrawingTexts;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingTexts) as IDrawingTexts;
end;

class function CoMarks.Create: IMarks;
begin
  Result := CreateComObject(CLASS_Marks) as IMarks;
end;

class function CoMarks.CreateRemote(const MachineName: string): IMarks;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Marks) as IMarks;
end;

class function CoMarkInsideForm.Create: IMarkInsideForm;
begin
  Result := CreateComObject(CLASS_MarkInsideForm) as IMarkInsideForm;
end;

class function CoMarkInsideForm.CreateRemote(const MachineName: string): IMarkInsideForm;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MarkInsideForm) as IMarkInsideForm;
end;

class function CoMarkOnLine.Create: IMarkOnLine;
begin
  Result := CreateComObject(CLASS_MarkOnLine) as IMarkOnLine;
end;

class function CoMarkOnLine.CreateRemote(const MachineName: string): IMarkOnLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MarkOnLine) as IMarkOnLine;
end;

class function CoMarkOnLeader.Create: IMarkOnLeader;
begin
  Result := CreateComObject(CLASS_MarkOnLeader) as IMarkOnLeader;
end;

class function CoMarkOnLeader.CreateRemote(const MachineName: string): IMarkOnLeader;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MarkOnLeader) as IMarkOnLeader;
end;

class function CoUserDataStoragesMng.Create: IUserDataStoragesMng;
begin
  Result := CreateComObject(CLASS_UserDataStoragesMng) as IUserDataStoragesMng;
end;

class function CoUserDataStoragesMng.CreateRemote(const MachineName: string): IUserDataStoragesMng;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_UserDataStoragesMng) as IUserDataStoragesMng;
end;

class function CoUserDataStorages.Create: IUserDataStorages;
begin
  Result := CreateComObject(CLASS_UserDataStorages) as IUserDataStorages;
end;

class function CoUserDataStorages.CreateRemote(const MachineName: string): IUserDataStorages;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_UserDataStorages) as IUserDataStorages;
end;

class function CoUserDataStorage.Create: IUserDataStorage;
begin
  Result := CreateComObject(CLASS_UserDataStorage) as IUserDataStorage;
end;

class function CoUserDataStorage.CreateRemote(const MachineName: string): IUserDataStorage;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_UserDataStorage) as IUserDataStorage;
end;

class function CoBuildingAxes.Create: IBuildingAxes;
begin
  Result := CreateComObject(CLASS_BuildingAxes) as IBuildingAxes;
end;

class function CoBuildingAxes.CreateRemote(const MachineName: string): IBuildingAxes;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BuildingAxes) as IBuildingAxes;
end;

class function CoStraightAxis.Create: IStraightAxis;
begin
  Result := CreateComObject(CLASS_StraightAxis) as IStraightAxis;
end;

class function CoStraightAxis.CreateRemote(const MachineName: string): IStraightAxis;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_StraightAxis) as IStraightAxis;
end;

class function CoArcAxis.Create: IArcAxis;
begin
  Result := CreateComObject(CLASS_ArcAxis) as IArcAxis;
end;

class function CoArcAxis.CreateRemote(const MachineName: string): IArcAxis;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ArcAxis) as IArcAxis;
end;

class function CoCircleAxis.Create: ICircleAxis;
begin
  Result := CreateComObject(CLASS_CircleAxis) as ICircleAxis;
end;

class function CoCircleAxis.CreateRemote(const MachineName: string): ICircleAxis;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CircleAxis) as ICircleAxis;
end;

class function CoAxisJut.Create: IAxisJut;
begin
  Result := CreateComObject(CLASS_AxisJut) as IAxisJut;
end;

class function CoAxisJut.CreateRemote(const MachineName: string): IAxisJut;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AxisJut) as IAxisJut;
end;

class function CoMarkNodes.Create: IMarkNodes;
begin
  Result := CreateComObject(CLASS_MarkNodes) as IMarkNodes;
end;

class function CoMarkNodes.CreateRemote(const MachineName: string): IMarkNodes;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MarkNodes) as IMarkNodes;
end;

class function CoMarkNode.Create: IMarkNode;
begin
  Result := CreateComObject(CLASS_MarkNode) as IMarkNode;
end;

class function CoMarkNode.CreateRemote(const MachineName: string): IMarkNode;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MarkNode) as IMarkNode;
end;

class function CoLineSegments.Create: ILineSegments;
begin
  Result := CreateComObject(CLASS_LineSegments) as ILineSegments;
end;

class function CoLineSegments.CreateRemote(const MachineName: string): ILineSegments;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LineSegments) as ILineSegments;
end;

class function CoLineSegment.Create: ILineSegment;
begin
  Result := CreateComObject(CLASS_LineSegment) as ILineSegment;
end;

class function CoLineSegment.CreateRemote(const MachineName: string): ILineSegment;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LineSegment) as ILineSegment;
end;

class function CoSystemSettings.Create: ISystemSettings;
begin
  Result := CreateComObject(CLASS_SystemSettings) as ISystemSettings;
end;

class function CoSystemSettings.CreateRemote(const MachineName: string): ISystemSettings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SystemSettings) as ISystemSettings;
end;

class function CoCutUnitMarking.Create: ICutUnitMarking;
begin
  Result := CreateComObject(CLASS_CutUnitMarking) as ICutUnitMarking;
end;

class function CoCutUnitMarking.CreateRemote(const MachineName: string): ICutUnitMarking;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CutUnitMarking) as ICutUnitMarking;
end;

class function CoCutUnitMarkings.Create: ICutUnitMarkings;
begin
  Result := CreateComObject(CLASS_CutUnitMarkings) as ICutUnitMarkings;
end;

class function CoCutUnitMarkings.CreateRemote(const MachineName: string): ICutUnitMarkings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CutUnitMarkings) as ICutUnitMarkings;
end;

class function CoUnitMarking.Create: IUnitMarking;
begin
  Result := CreateComObject(CLASS_UnitMarking) as IUnitMarking;
end;

class function CoUnitMarking.CreateRemote(const MachineName: string): IUnitMarking;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_UnitMarking) as IUnitMarking;
end;

class function CoUnitMarkings.Create: IUnitMarkings;
begin
  Result := CreateComObject(CLASS_UnitMarkings) as IUnitMarkings;
end;

class function CoUnitMarkings.CreateRemote(const MachineName: string): IUnitMarkings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_UnitMarkings) as IUnitMarkings;
end;

class function CoArcs.Create: IArcs;
begin
  Result := CreateComObject(CLASS_Arcs) as IArcs;
end;

class function CoArcs.CreateRemote(const MachineName: string): IArcs;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Arcs) as IArcs;
end;

class function Co_Arc.Create: IArc;
begin
  Result := CreateComObject(CLASS__Arc) as IArc;
end;

class function Co_Arc.CreateRemote(const MachineName: string): IArc;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Arc) as IArc;
end;

class function CoMultiTextLeader.Create: IMultiTextLeader;
begin
  Result := CreateComObject(CLASS_MultiTextLeader) as IMultiTextLeader;
end;

class function CoMultiTextLeader.CreateRemote(const MachineName: string): IMultiTextLeader;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MultiTextLeader) as IMultiTextLeader;
end;

class function CoMultiTextLeaders.Create: IMultiTextLeaders;
begin
  Result := CreateComObject(CLASS_MultiTextLeaders) as IMultiTextLeaders;
end;

class function CoMultiTextLeaders.CreateRemote(const MachineName: string): IMultiTextLeaders;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MultiTextLeaders) as IMultiTextLeaders;
end;

class function CoBrace.Create: IBrace;
begin
  Result := CreateComObject(CLASS_Brace) as IBrace;
end;

class function CoBrace.CreateRemote(const MachineName: string): IBrace;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Brace) as IBrace;
end;

class function CoBraces.Create: IBraces;
begin
  Result := CreateComObject(CLASS_Braces) as IBraces;
end;

class function CoBraces.CreateRemote(const MachineName: string): IBraces;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Braces) as IBraces;
end;

class function CoUnitNumber.Create: IUnitNumber;
begin
  Result := CreateComObject(CLASS_UnitNumber) as IUnitNumber;
end;

class function CoUnitNumber.CreateRemote(const MachineName: string): IUnitNumber;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_UnitNumber) as IUnitNumber;
end;

class function CoUnitNumbers.Create: IUnitNumbers;
begin
  Result := CreateComObject(CLASS_UnitNumbers) as IUnitNumbers;
end;

class function CoUnitNumbers.CreateRemote(const MachineName: string): IUnitNumbers;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_UnitNumbers) as IUnitNumbers;
end;

class function CoSketch.Create: ISketch;
begin
  Result := CreateComObject(CLASS_Sketch) as ISketch;
end;

class function CoSketch.CreateRemote(const MachineName: string): ISketch;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Sketch) as ISketch;
end;

class function CoExtrusion.Create: IExtrusion;
begin
  Result := CreateComObject(CLASS_Extrusion) as IExtrusion;
end;

class function CoExtrusion.CreateRemote(const MachineName: string): IExtrusion;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Extrusion) as IExtrusion;
end;

class function CoParametriticConstraint.Create: IParametriticConstraint;
begin
  Result := CreateComObject(CLASS_ParametriticConstraint) as IParametriticConstraint;
end;

class function CoParametriticConstraint.CreateRemote(const MachineName: string): IParametriticConstraint;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ParametriticConstraint) as IParametriticConstraint;
end;

class function CoCutExtrusion.Create: ICutExtrusion;
begin
  Result := CreateComObject(CLASS_CutExtrusion) as ICutExtrusion;
end;

class function CoCutExtrusion.CreateRemote(const MachineName: string): ICutExtrusion;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CutExtrusion) as ICutExtrusion;
end;

class function CoBody7.Create: IBody7;
begin
  Result := CreateComObject(CLASS_Body7) as IBody7;
end;

class function CoBody7.CreateRemote(const MachineName: string): IBody7;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Body7) as IBody7;
end;

class function CoSheetMetalBodies.Create: ISheetMetalBodies;
begin
  Result := CreateComObject(CLASS_SheetMetalBodies) as ISheetMetalBodies;
end;

class function CoSheetMetalBodies.CreateRemote(const MachineName: string): ISheetMetalBodies;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalBodies) as ISheetMetalBodies;
end;

class function CoSheetMetalBody.Create: ISheetMetalBody;
begin
  Result := CreateComObject(CLASS_SheetMetalBody) as ISheetMetalBody;
end;

class function CoSheetMetalBody.CreateRemote(const MachineName: string): ISheetMetalBody;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalBody) as ISheetMetalBody;
end;

class function CoPoints3D.Create: IPoints3D;
begin
  Result := CreateComObject(CLASS_Points3D) as IPoints3D;
end;

class function CoPoints3D.CreateRemote(const MachineName: string): IPoints3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Points3D) as IPoints3D;
end;

class function CoPoint3D.Create: IPoint3D;
begin
  Result := CreateComObject(CLASS_Point3D) as IPoint3D;
end;

class function CoPoint3D.CreateRemote(const MachineName: string): IPoint3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Point3D) as IPoint3D;
end;

class function CoPoint3DParamDisplace.Create: IPoint3DParamDisplace;
begin
  Result := CreateComObject(CLASS_Point3DParamDisplace) as IPoint3DParamDisplace;
end;

class function CoPoint3DParamDisplace.CreateRemote(const MachineName: string): IPoint3DParamDisplace;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Point3DParamDisplace) as IPoint3DParamDisplace;
end;

class function CoPoint3DParamIntersect.Create: IPoint3DParamIntersect;
begin
  Result := CreateComObject(CLASS_Point3DParamIntersect) as IPoint3DParamIntersect;
end;

class function CoPoint3DParamIntersect.CreateRemote(const MachineName: string): IPoint3DParamIntersect;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Point3DParamIntersect) as IPoint3DParamIntersect;
end;

class function CoPoint3DParamCenter.Create: IPoint3DParamCenter;
begin
  Result := CreateComObject(CLASS_Point3DParamCenter) as IPoint3DParamCenter;
end;

class function CoPoint3DParamCenter.CreateRemote(const MachineName: string): IPoint3DParamCenter;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Point3DParamCenter) as IPoint3DParamCenter;
end;

class function CoPoint3DParamCurve.Create: IPoint3DParamCurve;
begin
  Result := CreateComObject(CLASS_Point3DParamCurve) as IPoint3DParamCurve;
end;

class function CoPoint3DParamCurve.CreateRemote(const MachineName: string): IPoint3DParamCurve;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Point3DParamCurve) as IPoint3DParamCurve;
end;

class function CoPoint3DParamSurface.Create: IPoint3DParamSurface;
begin
  Result := CreateComObject(CLASS_Point3DParamSurface) as IPoint3DParamSurface;
end;

class function CoPoint3DParamSurface.CreateRemote(const MachineName: string): IPoint3DParamSurface;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Point3DParamSurface) as IPoint3DParamSurface;
end;

class function CoPoint3DParamProjection.Create: IPoint3DParamProjection;
begin
  Result := CreateComObject(CLASS_Point3DParamProjection) as IPoint3DParamProjection;
end;

class function CoPoint3DParamProjection.CreateRemote(const MachineName: string): IPoint3DParamProjection;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Point3DParamProjection) as IPoint3DParamProjection;
end;

class function CoSheetMetalBends.Create: ISheetMetalBends;
begin
  Result := CreateComObject(CLASS_SheetMetalBends) as ISheetMetalBends;
end;

class function CoSheetMetalBends.CreateRemote(const MachineName: string): ISheetMetalBends;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalBends) as ISheetMetalBends;
end;

class function CoSheetMetalBend.Create: ISheetMetalBend;
begin
  Result := CreateComObject(CLASS_SheetMetalBend) as ISheetMetalBend;
end;

class function CoSheetMetalBend.CreateRemote(const MachineName: string): ISheetMetalBend;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalBend) as ISheetMetalBend;
end;

class function CoSheetMetalLineBends.Create: ISheetMetalLineBends;
begin
  Result := CreateComObject(CLASS_SheetMetalLineBends) as ISheetMetalLineBends;
end;

class function CoSheetMetalLineBends.CreateRemote(const MachineName: string): ISheetMetalLineBends;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalLineBends) as ISheetMetalLineBends;
end;

class function CoSheetMetalLineBend.Create: ISheetMetalLineBend;
begin
  Result := CreateComObject(CLASS_SheetMetalLineBend) as ISheetMetalLineBend;
end;

class function CoSheetMetalLineBend.CreateRemote(const MachineName: string): ISheetMetalLineBend;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalLineBend) as ISheetMetalLineBend;
end;

class function CoSheetMetalHole.Create: ISheetMetalHole;
begin
  Result := CreateComObject(CLASS_SheetMetalHole) as ISheetMetalHole;
end;

class function CoSheetMetalHole.CreateRemote(const MachineName: string): ISheetMetalHole;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalHole) as ISheetMetalHole;
end;

class function CoSheetMetalHoles.Create: ISheetMetalHoles;
begin
  Result := CreateComObject(CLASS_SheetMetalHoles) as ISheetMetalHoles;
end;

class function CoSheetMetalHoles.CreateRemote(const MachineName: string): ISheetMetalHoles;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalHoles) as ISheetMetalHoles;
end;

class function CoSheetMetalCut.Create: ISheetMetalCut;
begin
  Result := CreateComObject(CLASS_SheetMetalCut) as ISheetMetalCut;
end;

class function CoSheetMetalCut.CreateRemote(const MachineName: string): ISheetMetalCut;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalCut) as ISheetMetalCut;
end;

class function CoSheetMetalCuts.Create: ISheetMetalCuts;
begin
  Result := CreateComObject(CLASS_SheetMetalCuts) as ISheetMetalCuts;
end;

class function CoSheetMetalCuts.CreateRemote(const MachineName: string): ISheetMetalCuts;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SheetMetalCuts) as ISheetMetalCuts;
end;

class function CoRadialDimension.Create: IRadialDimension;
begin
  Result := CreateComObject(CLASS_RadialDimension) as IRadialDimension;
end;

class function CoRadialDimension.CreateRemote(const MachineName: string): IRadialDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RadialDimension) as IRadialDimension;
end;

class function CoRadialDimensions.Create: IRadialDimensions;
begin
  Result := CreateComObject(CLASS_RadialDimensions) as IRadialDimensions;
end;

class function CoRadialDimensions.CreateRemote(const MachineName: string): IRadialDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RadialDimensions) as IRadialDimensions;
end;

class function CoBreakRadialDimension.Create: IBreakRadialDimension;
begin
  Result := CreateComObject(CLASS_BreakRadialDimension) as IBreakRadialDimension;
end;

class function CoBreakRadialDimension.CreateRemote(const MachineName: string): IBreakRadialDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BreakRadialDimension) as IBreakRadialDimension;
end;

class function CoRadialBreakDimensions.Create: IBreakRadialDimensions;
begin
  Result := CreateComObject(CLASS_RadialBreakDimensions) as IBreakRadialDimensions;
end;

class function CoRadialBreakDimensions.CreateRemote(const MachineName: string): IBreakRadialDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RadialBreakDimensions) as IBreakRadialDimensions;
end;

class function CoDiametralDimension.Create: IDiametralDimension;
begin
  Result := CreateComObject(CLASS_DiametralDimension) as IDiametralDimension;
end;

class function CoDiametralDimension.CreateRemote(const MachineName: string): IDiametralDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DiametralDimension) as IDiametralDimension;
end;

class function CoDiametralDimensions.Create: IDiametralDimensions;
begin
  Result := CreateComObject(CLASS_DiametralDimensions) as IDiametralDimensions;
end;

class function CoDiametralDimensions.CreateRemote(const MachineName: string): IDiametralDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DiametralDimensions) as IDiametralDimensions;
end;

class function CoLineDimensions3D.Create: ILineDimensions3D;
begin
  Result := CreateComObject(CLASS_LineDimensions3D) as ILineDimensions3D;
end;

class function CoLineDimensions3D.CreateRemote(const MachineName: string): ILineDimensions3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LineDimensions3D) as ILineDimensions3D;
end;

class function CoBaseLineDimension3D.Create: IBaseLineDimension3D;
begin
  Result := CreateComObject(CLASS_BaseLineDimension3D) as IBaseLineDimension3D;
end;

class function CoBaseLineDimension3D.CreateRemote(const MachineName: string): IBaseLineDimension3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BaseLineDimension3D) as IBaseLineDimension3D;
end;

class function CoLineDimension3D.Create: ILineDimension3D;
begin
  Result := CreateComObject(CLASS_LineDimension3D) as ILineDimension3D;
end;

class function CoLineDimension3D.CreateRemote(const MachineName: string): ILineDimension3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LineDimension3D) as ILineDimension3D;
end;

class function CoLineDimension.Create: ILineDimension;
begin
  Result := CreateComObject(CLASS_LineDimension) as ILineDimension;
end;

class function CoLineDimension.CreateRemote(const MachineName: string): ILineDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LineDimension) as ILineDimension;
end;

class function CoLineDimensions.Create: ILineDimensions;
begin
  Result := CreateComObject(CLASS_LineDimensions) as ILineDimensions;
end;

class function CoLineDimensions.CreateRemote(const MachineName: string): ILineDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LineDimensions) as ILineDimensions;
end;

class function CoRadialDimension3D.Create: IRadialDimension3D;
begin
  Result := CreateComObject(CLASS_RadialDimension3D) as IRadialDimension3D;
end;

class function CoRadialDimension3D.CreateRemote(const MachineName: string): IRadialDimension3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RadialDimension3D) as IRadialDimension3D;
end;

class function CoDiametralDimension3D.Create: IDiametralDimension3D;
begin
  Result := CreateComObject(CLASS_DiametralDimension3D) as IDiametralDimension3D;
end;

class function CoDiametralDimension3D.CreateRemote(const MachineName: string): IDiametralDimension3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DiametralDimension3D) as IDiametralDimension3D;
end;

class function CoRadialDimensions3D.Create: IRadialDimensions3D;
begin
  Result := CreateComObject(CLASS_RadialDimensions3D) as IRadialDimensions3D;
end;

class function CoRadialDimensions3D.CreateRemote(const MachineName: string): IRadialDimensions3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RadialDimensions3D) as IRadialDimensions3D;
end;

class function CoDiametralDimensions3D.Create: IDiametralDimensions3D;
begin
  Result := CreateComObject(CLASS_DiametralDimensions3D) as IDiametralDimensions3D;
end;

class function CoDiametralDimensions3D.CreateRemote(const MachineName: string): IDiametralDimensions3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DiametralDimensions3D) as IDiametralDimensions3D;
end;

class function CoBreakLineDimension.Create: IBreakLineDimension;
begin
  Result := CreateComObject(CLASS_BreakLineDimension) as IBreakLineDimension;
end;

class function CoBreakLineDimension.CreateRemote(const MachineName: string): IBreakLineDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BreakLineDimension) as IBreakLineDimension;
end;

class function CoBreakLineDimensions.Create: IBreakLineDimensions;
begin
  Result := CreateComObject(CLASS_BreakLineDimensions) as IBreakLineDimensions;
end;

class function CoBreakLineDimensions.CreateRemote(const MachineName: string): IBreakLineDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BreakLineDimensions) as IBreakLineDimensions;
end;

class function CoHeightDimension.Create: IHeightDimension;
begin
  Result := CreateComObject(CLASS_HeightDimension) as IHeightDimension;
end;

class function CoHeightDimension.CreateRemote(const MachineName: string): IHeightDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_HeightDimension) as IHeightDimension;
end;

class function CoHeightDimensions.Create: IHeightDimensions;
begin
  Result := CreateComObject(CLASS_HeightDimensions) as IHeightDimensions;
end;

class function CoHeightDimensions.CreateRemote(const MachineName: string): IHeightDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_HeightDimensions) as IHeightDimensions;
end;

class function CoAngleDimension.Create: IAngleDimension;
begin
  Result := CreateComObject(CLASS_AngleDimension) as IAngleDimension;
end;

class function CoAngleDimension.CreateRemote(const MachineName: string): IAngleDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AngleDimension) as IAngleDimension;
end;

class function CoAngleDimensions.Create: IAngleDimensions;
begin
  Result := CreateComObject(CLASS_AngleDimensions) as IAngleDimensions;
end;

class function CoAngleDimensions.CreateRemote(const MachineName: string): IAngleDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AngleDimensions) as IAngleDimensions;
end;

class function CoBreakAngleDimension.Create: IBreakAngleDimension;
begin
  Result := CreateComObject(CLASS_BreakAngleDimension) as IBreakAngleDimension;
end;

class function CoBreakAngleDimension.CreateRemote(const MachineName: string): IBreakAngleDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BreakAngleDimension) as IBreakAngleDimension;
end;

class function CoArcDimension.Create: IArcDimension;
begin
  Result := CreateComObject(CLASS_ArcDimension) as IArcDimension;
end;

class function CoArcDimension.CreateRemote(const MachineName: string): IArcDimension;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ArcDimension) as IArcDimension;
end;

class function CoArcDimensions.Create: IArcDimensions;
begin
  Result := CreateComObject(CLASS_ArcDimensions) as IArcDimensions;
end;

class function CoArcDimensions.CreateRemote(const MachineName: string): IArcDimensions;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ArcDimensions) as IArcDimensions;
end;

class function CoAngleDimension3D.Create: IAngleDimension3D;
begin
  Result := CreateComObject(CLASS_AngleDimension3D) as IAngleDimension3D;
end;

class function CoAngleDimension3D.CreateRemote(const MachineName: string): IAngleDimension3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AngleDimension3D) as IAngleDimension3D;
end;

class function CoAngleDimensions3D.Create: IAngleDimensions3D;
begin
  Result := CreateComObject(CLASS_AngleDimensions3D) as IAngleDimensions3D;
end;

class function CoAngleDimensions3D.CreateRemote(const MachineName: string): IAngleDimensions3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AngleDimensions3D) as IAngleDimensions3D;
end;

class function CoCurveVertexParam.Create: ICurveVertexParam;
begin
  Result := CreateComObject(CLASS_CurveVertexParam) as ICurveVertexParam;
end;

class function CoCurveVertexParam.CreateRemote(const MachineName: string): ICurveVertexParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CurveVertexParam) as ICurveVertexParam;
end;

class function CoSplines3D.Create: ISplines3D;
begin
  Result := CreateComObject(CLASS_Splines3D) as ISplines3D;
end;

class function CoSplines3D.CreateRemote(const MachineName: string): ISplines3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Splines3D) as ISplines3D;
end;

class function CoSpline3D.Create: ISpline3D;
begin
  Result := CreateComObject(CLASS_Spline3D) as ISpline3D;
end;

class function CoSpline3D.CreateRemote(const MachineName: string): ISpline3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Spline3D) as ISpline3D;
end;

class function CoLocalCoordinateSystem.Create: ILocalCoordinateSystem;
begin
  Result := CreateComObject(CLASS_LocalCoordinateSystem) as ILocalCoordinateSystem;
end;

class function CoLocalCoordinateSystem.CreateRemote(const MachineName: string): ILocalCoordinateSystem;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LocalCoordinateSystem) as ILocalCoordinateSystem;
end;

class function CoLocalCoordinateSystems.Create: ILocalCoordinateSystems;
begin
  Result := CreateComObject(CLASS_LocalCoordinateSystems) as ILocalCoordinateSystems;
end;

class function CoLocalCoordinateSystems.CreateRemote(const MachineName: string): ILocalCoordinateSystems;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LocalCoordinateSystems) as ILocalCoordinateSystems;
end;

class function CoLocalCSAxesDirectionParam.Create: ILocalCSAxesDirectionParam;
begin
  Result := CreateComObject(CLASS_LocalCSAxesDirectionParam) as ILocalCSAxesDirectionParam;
end;

class function CoLocalCSAxesDirectionParam.CreateRemote(const MachineName: string): ILocalCSAxesDirectionParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LocalCSAxesDirectionParam) as ILocalCSAxesDirectionParam;
end;

class function CoLocalCSEulerParam.Create: ILocalCSEulerParam;
begin
  Result := CreateComObject(CLASS_LocalCSEulerParam) as ILocalCSEulerParam;
end;

class function CoLocalCSEulerParam.CreateRemote(const MachineName: string): ILocalCSEulerParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LocalCSEulerParam) as ILocalCSEulerParam;
end;

class function CoPolyLine.Create: IPolyLine;
begin
  Result := CreateComObject(CLASS_PolyLine) as IPolyLine;
end;

class function CoPolyLine.CreateRemote(const MachineName: string): IPolyLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PolyLine) as IPolyLine;
end;

class function CoPolyLines.Create: IPolyLines;
begin
  Result := CreateComObject(CLASS_PolyLines) as IPolyLines;
end;

class function CoPolyLines.CreateRemote(const MachineName: string): IPolyLines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PolyLines) as IPolyLines;
end;

class function CoBaseLeader.Create: IBaseLeader;
begin
  Result := CreateComObject(CLASS_BaseLeader) as IBaseLeader;
end;

class function CoBaseLeader.CreateRemote(const MachineName: string): IBaseLeader;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BaseLeader) as IBaseLeader;
end;

class function CoLeaders.Create: ILeaders;
begin
  Result := CreateComObject(CLASS_Leaders) as ILeaders;
end;

class function CoLeaders.CreateRemote(const MachineName: string): ILeaders;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Leaders) as ILeaders;
end;

class function CoRoughs.Create: IRoughs;
begin
  Result := CreateComObject(CLASS_Roughs) as IRoughs;
end;

class function CoRoughs.CreateRemote(const MachineName: string): IRoughs;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Roughs) as IRoughs;
end;

class function CoRough.Create: IRough;
begin
  Result := CreateComObject(CLASS_Rough) as IRough;
end;

class function CoRough.CreateRemote(const MachineName: string): IRough;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Rough) as IRough;
end;

class function CoBaseLeader3D.Create: IBaseLeader3D;
begin
  Result := CreateComObject(CLASS_BaseLeader3D) as IBaseLeader3D;
end;

class function CoBaseLeader3D.CreateRemote(const MachineName: string): IBaseLeader3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BaseLeader3D) as IBaseLeader3D;
end;

class function CoLeaders3D.Create: ILeaders3D;
begin
  Result := CreateComObject(CLASS_Leaders3D) as ILeaders3D;
end;

class function CoLeaders3D.CreateRemote(const MachineName: string): ILeaders3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Leaders3D) as ILeaders3D;
end;

class function CoRough3D.Create: IRough3D;
begin
  Result := CreateComObject(CLASS_Rough3D) as IRough3D;
end;

class function CoRough3D.CreateRemote(const MachineName: string): IRough3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Rough3D) as IRough3D;
end;

class function CoRoughs3D.Create: IRoughs3D;
begin
  Result := CreateComObject(CLASS_Roughs3D) as IRoughs3D;
end;

class function CoRoughs3D.CreateRemote(const MachineName: string): IRoughs3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Roughs3D) as IRoughs3D;
end;

class function Co_Base.Create: IBase;
begin
  Result := CreateComObject(CLASS__Base) as IBase;
end;

class function Co_Base.CreateRemote(const MachineName: string): IBase;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Base) as IBase;
end;

class function CoBases.Create: IBases;
begin
  Result := CreateComObject(CLASS_Bases) as IBases;
end;

class function CoBases.CreateRemote(const MachineName: string): IBases;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Bases) as IBases;
end;

class function CoTableCell.Create: ITableCell;
begin
  Result := CreateComObject(CLASS_TableCell) as ITableCell;
end;

class function CoTableCell.CreateRemote(const MachineName: string): ITableCell;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_TableCell) as ITableCell;
end;

class function CoDrawingTable.Create: IDrawingTable;
begin
  Result := CreateComObject(CLASS_DrawingTable) as IDrawingTable;
end;

class function CoDrawingTable.CreateRemote(const MachineName: string): IDrawingTable;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingTable) as IDrawingTable;
end;

class function CoDrawingTables.Create: IDrawingTables;
begin
  Result := CreateComObject(CLASS_DrawingTables) as IDrawingTables;
end;

class function CoDrawingTables.CreateRemote(const MachineName: string): IDrawingTables;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingTables) as IDrawingTables;
end;

class function CoTolerances.Create: ITolerances;
begin
  Result := CreateComObject(CLASS_Tolerances) as ITolerances;
end;

class function CoTolerances.CreateRemote(const MachineName: string): ITolerances;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Tolerances) as ITolerances;
end;

class function Co_Tolerance.Create: ITolerance;
begin
  Result := CreateComObject(CLASS__Tolerance) as ITolerance;
end;

class function Co_Tolerance.CreateRemote(const MachineName: string): ITolerance;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Tolerance) as ITolerance;
end;

class function CoBases3D.Create: IBases3D;
begin
  Result := CreateComObject(CLASS_Bases3D) as IBases3D;
end;

class function CoBases3D.CreateRemote(const MachineName: string): IBases3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Bases3D) as IBases3D;
end;

class function CoBase3D.Create: IBase3D;
begin
  Result := CreateComObject(CLASS_Base3D) as IBase3D;
end;

class function CoBase3D.CreateRemote(const MachineName: string): IBase3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Base3D) as IBase3D;
end;

class function CoTolerances3D.Create: ITolerances3D;
begin
  Result := CreateComObject(CLASS_Tolerances3D) as ITolerances3D;
end;

class function CoTolerances3D.CreateRemote(const MachineName: string): ITolerances3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Tolerances3D) as ITolerances3D;
end;

class function CoTolerance3D.Create: ITolerance3D;
begin
  Result := CreateComObject(CLASS_Tolerance3D) as ITolerance3D;
end;

class function CoTolerance3D.CreateRemote(const MachineName: string): ITolerance3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Tolerance3D) as ITolerance3D;
end;

class function CoLocalCSOrientByObjectParam.Create: ILocalCSOrientByObjectParam;
begin
  Result := CreateComObject(CLASS_LocalCSOrientByObjectParam) as ILocalCSOrientByObjectParam;
end;

class function CoLocalCSOrientByObjectParam.CreateRemote(const MachineName: string): ILocalCSOrientByObjectParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LocalCSOrientByObjectParam) as ILocalCSOrientByObjectParam;
end;

class function CoCutLine.Create: ICutLine;
begin
  Result := CreateComObject(CLASS_CutLine) as ICutLine;
end;

class function CoCutLine.CreateRemote(const MachineName: string): ICutLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CutLine) as ICutLine;
end;

class function CoCutLines.Create: ICutLines;
begin
  Result := CreateComObject(CLASS_CutLines) as ICutLines;
end;

class function CoCutLines.CreateRemote(const MachineName: string): ICutLines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CutLines) as ICutLines;
end;

class function CoExternalTessellationObject.Create: IExternalTessellationObject;
begin
  Result := CreateComObject(CLASS_ExternalTessellationObject) as IExternalTessellationObject;
end;

class function CoExternalTessellationObject.CreateRemote(const MachineName: string): IExternalTessellationObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ExternalTessellationObject) as IExternalTessellationObject;
end;

class function CoControlPoints.Create: IControlPoints;
begin
  Result := CreateComObject(CLASS_ControlPoints) as IControlPoints;
end;

class function CoControlPoints.CreateRemote(const MachineName: string): IControlPoints;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ControlPoints) as IControlPoints;
end;

class function CoControlPoint.Create: IControlPoint;
begin
  Result := CreateComObject(CLASS_ControlPoint) as IControlPoint;
end;

class function CoControlPoint.CreateRemote(const MachineName: string): IControlPoint;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ControlPoint) as IControlPoint;
end;

class function CoConjunctivePoints.Create: IConjunctivePoints;
begin
  Result := CreateComObject(CLASS_ConjunctivePoints) as IConjunctivePoints;
end;

class function CoConjunctivePoints.CreateRemote(const MachineName: string): IConjunctivePoints;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ConjunctivePoints) as IConjunctivePoints;
end;

class function CoConjunctivePoint.Create: IConjunctivePoint;
begin
  Result := CreateComObject(CLASS_ConjunctivePoint) as IConjunctivePoint;
end;

class function CoConjunctivePoint.CreateRemote(const MachineName: string): IConjunctivePoint;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ConjunctivePoint) as IConjunctivePoint;
end;

class function CoPropertyBmpList.Create: IPropertyBmpList;
begin
  Result := CreateComObject(CLASS_PropertyBmpList) as IPropertyBmpList;
end;

class function CoPropertyBmpList.CreateRemote(const MachineName: string): IPropertyBmpList;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyBmpList) as IPropertyBmpList;
end;

class function CoViewPointer.Create: IViewPointer;
begin
  Result := CreateComObject(CLASS_ViewPointer) as IViewPointer;
end;

class function CoViewPointer.CreateRemote(const MachineName: string): IViewPointer;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ViewPointer) as IViewPointer;
end;

class function CoViewPointers.Create: IViewPointers;
begin
  Result := CreateComObject(CLASS_ViewPointers) as IViewPointers;
end;

class function CoViewPointers.CreateRemote(const MachineName: string): IViewPointers;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ViewPointers) as IViewPointers;
end;

class function CoMultiline.Create: IMultiline;
begin
  Result := CreateComObject(CLASS_Multiline) as IMultiline;
end;

class function CoMultiline.CreateRemote(const MachineName: string): IMultiline;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Multiline) as IMultiline;
end;

class function CoMultilines.Create: IMultilines;
begin
  Result := CreateComObject(CLASS_Multilines) as IMultilines;
end;

class function CoMultilines.CreateRemote(const MachineName: string): IMultilines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Multilines) as IMultilines;
end;

class function CoContour.Create: IContour;
begin
  Result := CreateComObject(CLASS_Contour) as IContour;
end;

class function CoContour.CreateRemote(const MachineName: string): IContour;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Contour) as IContour;
end;

class function CoContourSegment.Create: IContourSegment;
begin
  Result := CreateComObject(CLASS_ContourSegment) as IContourSegment;
end;

class function CoContourSegment.CreateRemote(const MachineName: string): IContourSegment;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ContourSegment) as IContourSegment;
end;

class function CoContourLineSegment.Create: IContourLineSegment;
begin
  Result := CreateComObject(CLASS_ContourLineSegment) as IContourLineSegment;
end;

class function CoContourLineSegment.CreateRemote(const MachineName: string): IContourLineSegment;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ContourLineSegment) as IContourLineSegment;
end;

class function CoContourArc.Create: IContourArc;
begin
  Result := CreateComObject(CLASS_ContourArc) as IContourArc;
end;

class function CoContourArc.CreateRemote(const MachineName: string): IContourArc;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ContourArc) as IContourArc;
end;

class function CoCurve2D.Create: ICurve2D;
begin
  Result := CreateComObject(CLASS_Curve2D) as ICurve2D;
end;

class function CoCurve2D.CreateRemote(const MachineName: string): ICurve2D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Curve2D) as ICurve2D;
end;

class function CoDrawingContours.Create: IDrawingContours;
begin
  Result := CreateComObject(CLASS_DrawingContours) as IDrawingContours;
end;

class function CoDrawingContours.CreateRemote(const MachineName: string): IDrawingContours;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingContours) as IDrawingContours;
end;

class function CoDrawingContour.Create: IDrawingContour;
begin
  Result := CreateComObject(CLASS_DrawingContour) as IDrawingContour;
end;

class function CoDrawingContour.CreateRemote(const MachineName: string): IDrawingContour;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingContour) as IDrawingContour;
end;

class function CoSplitLines.Create: ISplitLines;
begin
  Result := CreateComObject(CLASS_SplitLines) as ISplitLines;
end;

class function CoSplitLines.CreateRemote(const MachineName: string): ISplitLines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SplitLines) as ISplitLines;
end;

class function CoSplitLine.Create: ISplitLine;
begin
  Result := CreateComObject(CLASS_SplitLine) as ISplitLine;
end;

class function CoSplitLine.CreateRemote(const MachineName: string): ISplitLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SplitLine) as ISplitLine;
end;

class function CoSurfacePatches.Create: ISurfacePatches;
begin
  Result := CreateComObject(CLASS_SurfacePatches) as ISurfacePatches;
end;

class function CoSurfacePatches.CreateRemote(const MachineName: string): ISurfacePatches;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SurfacePatches) as ISurfacePatches;
end;

class function CoSurfacePatch.Create: ISurfacePatch;
begin
  Result := CreateComObject(CLASS_SurfacePatch) as ISurfacePatch;
end;

class function CoSurfacePatch.CreateRemote(const MachineName: string): ISurfacePatch;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SurfacePatch) as ISurfacePatch;
end;

class function CoFaceRemovers.Create: IFaceRemovers;
begin
  Result := CreateComObject(CLASS_FaceRemovers) as IFaceRemovers;
end;

class function CoFaceRemovers.CreateRemote(const MachineName: string): IFaceRemovers;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_FaceRemovers) as IFaceRemovers;
end;

class function CoFaceRemover.Create: IFaceRemover;
begin
  Result := CreateComObject(CLASS_FaceRemover) as IFaceRemover;
end;

class function CoFaceRemover.CreateRemote(const MachineName: string): IFaceRemover;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_FaceRemover) as IFaceRemover;
end;

class function CoSurfaceSewers.Create: ISurfaceSewers;
begin
  Result := CreateComObject(CLASS_SurfaceSewers) as ISurfaceSewers;
end;

class function CoSurfaceSewers.CreateRemote(const MachineName: string): ISurfaceSewers;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SurfaceSewers) as ISurfaceSewers;
end;

class function CoSurfaceSewer.Create: ISurfaceSewer;
begin
  Result := CreateComObject(CLASS_SurfaceSewer) as ISurfaceSewer;
end;

class function CoSurfaceSewer.CreateRemote(const MachineName: string): ISurfaceSewer;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SurfaceSewer) as ISurfaceSewer;
end;

class function CoNurbsSurfaces.Create: INurbsSurfaces;
begin
  Result := CreateComObject(CLASS_NurbsSurfaces) as INurbsSurfaces;
end;

class function CoNurbsSurfaces.CreateRemote(const MachineName: string): INurbsSurfaces;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_NurbsSurfaces) as INurbsSurfaces;
end;

class function CoNurbsSurface.Create: INurbsSurface;
begin
  Result := CreateComObject(CLASS_NurbsSurface) as INurbsSurface;
end;

class function CoNurbsSurface.CreateRemote(const MachineName: string): INurbsSurface;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_NurbsSurface) as INurbsSurface;
end;

class function CoPropertyLibExplorer.Create: IPropertyLibExplorer;
begin
  Result := CreateComObject(CLASS_PropertyLibExplorer) as IPropertyLibExplorer;
end;

class function CoPropertyLibExplorer.CreateRemote(const MachineName: string): IPropertyLibExplorer;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyLibExplorer) as IPropertyLibExplorer;
end;

class function CoExternalGDIObject.Create: IExternalGDIObject;
begin
  Result := CreateComObject(CLASS_ExternalGDIObject) as IExternalGDIObject;
end;

class function CoExternalGDIObject.CreateRemote(const MachineName: string): IExternalGDIObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ExternalGDIObject) as IExternalGDIObject;
end;

class function CoCircles.Create: ICircles;
begin
  Result := CreateComObject(CLASS_Circles) as ICircles;
end;

class function CoCircles.CreateRemote(const MachineName: string): ICircles;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Circles) as ICircles;
end;

class function Co_Circle.Create: ICircle;
begin
  Result := CreateComObject(CLASS__Circle) as ICircle;
end;

class function Co_Circle.CreateRemote(const MachineName: string): ICircle;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Circle) as ICircle;
end;

class function CoMacroObjects.Create: IMacroObjects;
begin
  Result := CreateComObject(CLASS_MacroObjects) as IMacroObjects;
end;

class function CoMacroObjects.CreateRemote(const MachineName: string): IMacroObjects;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MacroObjects) as IMacroObjects;
end;

class function CoMacroObject.Create: IMacroObject;
begin
  Result := CreateComObject(CLASS_MacroObject) as IMacroObject;
end;

class function CoMacroObject.CreateRemote(const MachineName: string): IMacroObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MacroObject) as IMacroObject;
end;

class function CoEllipses.Create: IEllipses;
begin
  Result := CreateComObject(CLASS_Ellipses) as IEllipses;
end;

class function CoEllipses.CreateRemote(const MachineName: string): IEllipses;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Ellipses) as IEllipses;
end;

class function Co_Ellipse.Create: IEllipse;
begin
  Result := CreateComObject(CLASS__Ellipse) as IEllipse;
end;

class function Co_Ellipse.CreateRemote(const MachineName: string): IEllipse;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Ellipse) as IEllipse;
end;

class function CoEllipseArcs.Create: IEllipseArcs;
begin
  Result := CreateComObject(CLASS_EllipseArcs) as IEllipseArcs;
end;

class function CoEllipseArcs.CreateRemote(const MachineName: string): IEllipseArcs;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_EllipseArcs) as IEllipseArcs;
end;

class function Co_EllipseArc.Create: IEllipseArc;
begin
  Result := CreateComObject(CLASS__EllipseArc) as IEllipseArc;
end;

class function Co_EllipseArc.CreateRemote(const MachineName: string): IEllipseArc;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__EllipseArc) as IEllipseArc;
end;

class function Co_Point.Create: IPoint;
begin
  Result := CreateComObject(CLASS__Point) as IPoint;
end;

class function Co_Point.CreateRemote(const MachineName: string): IPoint;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Point) as IPoint;
end;

class function CoPoints.Create: IPoints;
begin
  Result := CreateComObject(CLASS_Points) as IPoints;
end;

class function CoPoints.CreateRemote(const MachineName: string): IPoints;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Points) as IPoints;
end;

class function Co_Line.Create: ILine;
begin
  Result := CreateComObject(CLASS__Line) as ILine;
end;

class function Co_Line.CreateRemote(const MachineName: string): ILine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Line) as ILine;
end;

class function CoLines.Create: ILines;
begin
  Result := CreateComObject(CLASS_Lines) as ILines;
end;

class function CoLines.CreateRemote(const MachineName: string): ILines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Lines) as ILines;
end;

class function Co_Bezier.Create: IBezier;
begin
  Result := CreateComObject(CLASS__Bezier) as IBezier;
end;

class function Co_Bezier.CreateRemote(const MachineName: string): IBezier;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Bezier) as IBezier;
end;

class function CoBeziers.Create: IBeziers;
begin
  Result := CreateComObject(CLASS_Beziers) as IBeziers;
end;

class function CoBeziers.CreateRemote(const MachineName: string): IBeziers;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Beziers) as IBeziers;
end;

class function CoRectangles.Create: IRectangles;
begin
  Result := CreateComObject(CLASS_Rectangles) as IRectangles;
end;

class function CoRectangles.CreateRemote(const MachineName: string): IRectangles;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Rectangles) as IRectangles;
end;

class function Co_Rectangle.Create: IRectangle;
begin
  Result := CreateComObject(CLASS__Rectangle) as IRectangle;
end;

class function Co_Rectangle.CreateRemote(const MachineName: string): IRectangle;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Rectangle) as IRectangle;
end;

class function CoRegularPolygons.Create: IRegularPolygons;
begin
  Result := CreateComObject(CLASS_RegularPolygons) as IRegularPolygons;
end;

class function CoRegularPolygons.CreateRemote(const MachineName: string): IRegularPolygons;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RegularPolygons) as IRegularPolygons;
end;

class function CoRegularPolygon.Create: IRegularPolygon;
begin
  Result := CreateComObject(CLASS_RegularPolygon) as IRegularPolygon;
end;

class function CoRegularPolygon.CreateRemote(const MachineName: string): IRegularPolygon;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RegularPolygon) as IRegularPolygon;
end;

class function CoInsertionObjects.Create: IInsertionObjects;
begin
  Result := CreateComObject(CLASS_InsertionObjects) as IInsertionObjects;
end;

class function CoInsertionObjects.CreateRemote(const MachineName: string): IInsertionObjects;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_InsertionObjects) as IInsertionObjects;
end;

class function CoInsertionView.Create: IInsertionView;
begin
  Result := CreateComObject(CLASS_InsertionView) as IInsertionView;
end;

class function CoInsertionView.CreateRemote(const MachineName: string): IInsertionView;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_InsertionView) as IInsertionView;
end;

class function CoInsertionDefinition.Create: IInsertionDefinition;
begin
  Result := CreateComObject(CLASS_InsertionDefinition) as IInsertionDefinition;
end;

class function CoInsertionDefinition.CreateRemote(const MachineName: string): IInsertionDefinition;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_InsertionDefinition) as IInsertionDefinition;
end;

class function CoPolyLine2D.Create: IPolyLine2D;
begin
  Result := CreateComObject(CLASS_PolyLine2D) as IPolyLine2D;
end;

class function CoPolyLine2D.CreateRemote(const MachineName: string): IPolyLine2D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PolyLine2D) as IPolyLine2D;
end;

class function CoPolyLines2D.Create: IPolyLines2D;
begin
  Result := CreateComObject(CLASS_PolyLines2D) as IPolyLines2D;
end;

class function CoPolyLines2D.CreateRemote(const MachineName: string): IPolyLines2D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PolyLines2D) as IPolyLines2D;
end;

class function CoEquidistants.Create: IEquidistants;
begin
  Result := CreateComObject(CLASS_Equidistants) as IEquidistants;
end;

class function CoEquidistants.CreateRemote(const MachineName: string): IEquidistants;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Equidistants) as IEquidistants;
end;

class function Co_Equidistant.Create: IEquidistant;
begin
  Result := CreateComObject(CLASS__Equidistant) as IEquidistant;
end;

class function Co_Equidistant.CreateRemote(const MachineName: string): IEquidistant;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Equidistant) as IEquidistant;
end;

class function Co_Nurbs.Create: INurbs;
begin
  Result := CreateComObject(CLASS__Nurbs) as INurbs;
end;

class function Co_Nurbs.CreateRemote(const MachineName: string): INurbs;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Nurbs) as INurbs;
end;

class function CoNurbses.Create: INurbses;
begin
  Result := CreateComObject(CLASS_Nurbses) as INurbses;
end;

class function CoNurbses.CreateRemote(const MachineName: string): INurbses;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Nurbses) as INurbses;
end;

class function CoCentreMarkers.Create: ICentreMarkers;
begin
  Result := CreateComObject(CLASS_CentreMarkers) as ICentreMarkers;
end;

class function CoCentreMarkers.CreateRemote(const MachineName: string): ICentreMarkers;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CentreMarkers) as ICentreMarkers;
end;

class function CoCentreMarker.Create: ICentreMarker;
begin
  Result := CreateComObject(CLASS_CentreMarker) as ICentreMarker;
end;

class function CoCentreMarker.CreateRemote(const MachineName: string): ICentreMarker;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CentreMarker) as ICentreMarker;
end;

class function CoRemoteElement.Create: IRemoteElement;
begin
  Result := CreateComObject(CLASS_RemoteElement) as IRemoteElement;
end;

class function CoRemoteElement.CreateRemote(const MachineName: string): IRemoteElement;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RemoteElement) as IRemoteElement;
end;

class function CoRemoteElements.Create: IRemoteElements;
begin
  Result := CreateComObject(CLASS_RemoteElements) as IRemoteElements;
end;

class function CoRemoteElements.CreateRemote(const MachineName: string): IRemoteElements;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_RemoteElements) as IRemoteElements;
end;

class function Co_Attribute.Create: IAttribute;
begin
  Result := CreateComObject(CLASS__Attribute) as IAttribute;
end;

class function Co_Attribute.CreateRemote(const MachineName: string): IAttribute;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Attribute) as IAttribute;
end;

class function Co_ColumnInfo.Create: IColumnInfo;
begin
  Result := CreateComObject(CLASS__ColumnInfo) as IColumnInfo;
end;

class function Co_ColumnInfo.CreateRemote(const MachineName: string): IColumnInfo;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__ColumnInfo) as IColumnInfo;
end;

class function Co_AttributeType.Create: IAttributeType;
begin
  Result := CreateComObject(CLASS__AttributeType) as IAttributeType;
end;

class function Co_AttributeType.CreateRemote(const MachineName: string): IAttributeType;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__AttributeType) as IAttributeType;
end;

class function CoAxisLine.Create: IAxisLine;
begin
  Result := CreateComObject(CLASS_AxisLine) as IAxisLine;
end;

class function CoAxisLine.CreateRemote(const MachineName: string): IAxisLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AxisLine) as IAxisLine;
end;

class function CoAxisLines.Create: IAxisLines;
begin
  Result := CreateComObject(CLASS_AxisLines) as IAxisLines;
end;

class function CoAxisLines.CreateRemote(const MachineName: string): IAxisLines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_AxisLines) as IAxisLines;
end;

class function CoVariable7.Create: IVariable7;
begin
  Result := CreateComObject(CLASS_Variable7) as IVariable7;
end;

class function CoVariable7.CreateRemote(const MachineName: string): IVariable7;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Variable7) as IVariable7;
end;

class function CoInsertionParameters.Create: IInsertionParameters;
begin
  Result := CreateComObject(CLASS_InsertionParameters) as IInsertionParameters;
end;

class function CoInsertionParameters.CreateRemote(const MachineName: string): IInsertionParameters;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_InsertionParameters) as IInsertionParameters;
end;

class function CoDrawingGroup.Create: IDrawingGroup;
begin
  Result := CreateComObject(CLASS_DrawingGroup) as IDrawingGroup;
end;

class function CoDrawingGroup.CreateRemote(const MachineName: string): IDrawingGroup;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingGroup) as IDrawingGroup;
end;

class function CoDrawingGroups.Create: IDrawingGroups;
begin
  Result := CreateComObject(CLASS_DrawingGroups) as IDrawingGroups;
end;

class function CoDrawingGroups.CreateRemote(const MachineName: string): IDrawingGroups;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_DrawingGroups) as IDrawingGroups;
end;

class function Co_Hatch.Create: IHatch;
begin
  Result := CreateComObject(CLASS__Hatch) as IHatch;
end;

class function Co_Hatch.CreateRemote(const MachineName: string): IHatch;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Hatch) as IHatch;
end;

class function Co_Colouring.Create: IColouring;
begin
  Result := CreateComObject(CLASS__Colouring) as IColouring;
end;

class function Co_Colouring.CreateRemote(const MachineName: string): IColouring;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Colouring) as IColouring;
end;

class function CoHatches.Create: IHatches;
begin
  Result := CreateComObject(CLASS_Hatches) as IHatches;
end;

class function CoHatches.CreateRemote(const MachineName: string): IHatches;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Hatches) as IHatches;
end;

class function CoColourings.Create: IColourings;
begin
  Result := CreateComObject(CLASS_Colourings) as IColourings;
end;

class function CoColourings.CreateRemote(const MachineName: string): IColourings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Colourings) as IColourings;
end;

class function Co_SpecRough.Create: ISpecRough;
begin
  Result := CreateComObject(CLASS__SpecRough) as ISpecRough;
end;

class function Co_SpecRough.CreateRemote(const MachineName: string): ISpecRough;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__SpecRough) as ISpecRough;
end;

class function CoTechnicalDemand.Create: ITechnicalDemand;
begin
  Result := CreateComObject(CLASS_TechnicalDemand) as ITechnicalDemand;
end;

class function CoTechnicalDemand.CreateRemote(const MachineName: string): ITechnicalDemand;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_TechnicalDemand) as ITechnicalDemand;
end;

class function Co_Raster.Create: IRaster;
begin
  Result := CreateComObject(CLASS__Raster) as IRaster;
end;

class function Co_Raster.CreateRemote(const MachineName: string): IRaster;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Raster) as IRaster;
end;

class function CoRasters.Create: IRasters;
begin
  Result := CreateComObject(CLASS_Rasters) as IRasters;
end;

class function CoRasters.CreateRemote(const MachineName: string): IRasters;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Rasters) as IRasters;
end;

class function CoOleDrawingObject.Create: IOleDrawingObject;
begin
  Result := CreateComObject(CLASS_OleDrawingObject) as IOleDrawingObject;
end;

class function CoOleDrawingObject.CreateRemote(const MachineName: string): IOleDrawingObject;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_OleDrawingObject) as IOleDrawingObject;
end;

class function CoOleDrawingObjects.Create: IOleDrawingObjects;
begin
  Result := CreateComObject(CLASS_OleDrawingObjects) as IOleDrawingObjects;
end;

class function CoOleDrawingObjects.CreateRemote(const MachineName: string): IOleDrawingObjects;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_OleDrawingObjects) as IOleDrawingObjects;
end;

class function CoSelectionManager.Create: ISelectionManager;
begin
  Result := CreateComObject(CLASS_SelectionManager) as ISelectionManager;
end;

class function CoSelectionManager.CreateRemote(const MachineName: string): ISelectionManager;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SelectionManager) as ISelectionManager;
end;

class function CoChooseManager.Create: IChooseManager;
begin
  Result := CreateComObject(CLASS_ChooseManager) as IChooseManager;
end;

class function CoChooseManager.CreateRemote(const MachineName: string): IChooseManager;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ChooseManager) as IChooseManager;
end;

class function CoSurfacesIntersectionCurve.Create: ISurfacesIntersectionCurve;
begin
  Result := CreateComObject(CLASS_SurfacesIntersectionCurve) as ISurfacesIntersectionCurve;
end;

class function CoSurfacesIntersectionCurve.CreateRemote(const MachineName: string): ISurfacesIntersectionCurve;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SurfacesIntersectionCurve) as ISurfacesIntersectionCurve;
end;

class function CoSurfacesIntersectionCurves.Create: ISurfacesIntersectionCurves;
begin
  Result := CreateComObject(CLASS_SurfacesIntersectionCurves) as ISurfacesIntersectionCurves;
end;

class function CoSurfacesIntersectionCurves.CreateRemote(const MachineName: string): ISurfacesIntersectionCurves;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_SurfacesIntersectionCurves) as ISurfacesIntersectionCurves;
end;

class function Co_Stamp.Create: IStamp;
begin
  Result := CreateComObject(CLASS__Stamp) as IStamp;
end;

class function Co_Stamp.CreateRemote(const MachineName: string): IStamp;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Stamp) as IStamp;
end;

class function CoWaveLine.Create: IWaveLine;
begin
  Result := CreateComObject(CLASS_WaveLine) as IWaveLine;
end;

class function CoWaveLine.CreateRemote(const MachineName: string): IWaveLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_WaveLine) as IWaveLine;
end;

class function CoWaveLines.Create: IWaveLines;
begin
  Result := CreateComObject(CLASS_WaveLines) as IWaveLines;
end;

class function CoWaveLines.CreateRemote(const MachineName: string): IWaveLines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_WaveLines) as IWaveLines;
end;

class function CoBrokenLine.Create: IBrokenLine;
begin
  Result := CreateComObject(CLASS_BrokenLine) as IBrokenLine;
end;

class function CoBrokenLine.CreateRemote(const MachineName: string): IBrokenLine;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BrokenLine) as IBrokenLine;
end;

class function CoBrokenLines.Create: IBrokenLines;
begin
  Result := CreateComObject(CLASS_BrokenLines) as IBrokenLines;
end;

class function CoBrokenLines.CreateRemote(const MachineName: string): IBrokenLines;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_BrokenLines) as IBrokenLines;
end;

class function CoPropertyStyleList.Create: IPropertyStyleList;
begin
  Result := CreateComObject(CLASS_PropertyStyleList) as IPropertyStyleList;
end;

class function CoPropertyStyleList.CreateRemote(const MachineName: string): IPropertyStyleList;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PropertyStyleList) as IPropertyStyleList;
end;

class function Co_CopyObjectParam.Create: ICopyObjectParam;
begin
  Result := CreateComObject(CLASS__CopyObjectParam) as ICopyObjectParam;
end;

class function Co_CopyObjectParam.CreateRemote(const MachineName: string): ICopyObjectParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__CopyObjectParam) as ICopyObjectParam;
end;

class function CoCurveCopyObjectParam.Create: ICurveCopyObjectParam;
begin
  Result := CreateComObject(CLASS_CurveCopyObjectParam) as ICurveCopyObjectParam;
end;

class function CoCurveCopyObjectParam.CreateRemote(const MachineName: string): ICurveCopyObjectParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CurveCopyObjectParam) as ICurveCopyObjectParam;
end;

class function CoCircleCopyObjectParam.Create: ICircleCopyObjectParam;
begin
  Result := CreateComObject(CLASS_CircleCopyObjectParam) as ICircleCopyObjectParam;
end;

class function CoCircleCopyObjectParam.CreateRemote(const MachineName: string): ICircleCopyObjectParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CircleCopyObjectParam) as ICircleCopyObjectParam;
end;

class function CoCircularCopyObjectParam.Create: ICircularCopyObjectParam;
begin
  Result := CreateComObject(CLASS_CircularCopyObjectParam) as ICircularCopyObjectParam;
end;

class function CoCircularCopyObjectParam.CreateRemote(const MachineName: string): ICircularCopyObjectParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_CircularCopyObjectParam) as ICircularCopyObjectParam;
end;

class function CoMeshCopyObjectParam.Create: IMeshCopyObjectParam;
begin
  Result := CreateComObject(CLASS_MeshCopyObjectParam) as IMeshCopyObjectParam;
end;

class function CoMeshCopyObjectParam.CreateRemote(const MachineName: string): IMeshCopyObjectParam;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_MeshCopyObjectParam) as IMeshCopyObjectParam;
end;

class function CoPrintJob.Create: IPrintJob;
begin
  Result := CreateComObject(CLASS_PrintJob) as IPrintJob;
end;

class function CoPrintJob.CreateRemote(const MachineName: string): IPrintJob;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PrintJob) as IPrintJob;
end;

class function CoPrintJob_Sheet.Create: IPrintJob_Sheet;
begin
  Result := CreateComObject(CLASS_PrintJob_Sheet) as IPrintJob_Sheet;
end;

class function CoPrintJob_Sheet.CreateRemote(const MachineName: string): IPrintJob_Sheet;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_PrintJob_Sheet) as IPrintJob_Sheet;
end;

class function Co_Property.Create: IProperty;
begin
  Result := CreateComObject(CLASS__Property) as IProperty;
end;

class function Co_Property.CreateRemote(const MachineName: string): IProperty;
begin
  Result := CreateRemoteComObject(MachineName, CLASS__Property) as IProperty;
end;

class function CoLibArraySettings.Create: ILibArraySettings;
begin
  Result := CreateComObject(CLASS_LibArraySettings) as ILibArraySettings;
end;

class function CoLibArraySettings.CreateRemote(const MachineName: string): ILibArraySettings;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_LibArraySettings) as ILibArraySettings;
end;

class function CoReportProcess.Create: IReportProcess;
begin
  Result := CreateComObject(CLASS_ReportProcess) as IReportProcess;
end;

class function CoReportProcess.CreateRemote(const MachineName: string): IReportProcess;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_ReportProcess) as IReportProcess;
end;

class function CoEquidistants3D.Create: IEquidistants3D;
begin
  Result := CreateComObject(CLASS_Equidistants3D) as IEquidistants3D;
end;

class function CoEquidistants3D.CreateRemote(const MachineName: string): IEquidistants3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Equidistants3D) as IEquidistants3D;
end;

class function CoEquidistant3D.Create: IEquidistant3D;
begin
  Result := CreateComObject(CLASS_Equidistant3D) as IEquidistant3D;
end;

class function CoEquidistant3D.CreateRemote(const MachineName: string): IEquidistant3D;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Equidistant3D) as IEquidistant3D;
end;

end.
